Mạch GY-87 10DOF MPU6050 HMC5883L BMP180 – Cảm biến 10 Trục Tích Hợp (IMU 6-Axis + La Bàn + Áp Suất) cho Điều Hướng Drone & Robot Tự Cân Bằng
Mạch GY-87 10DOF thuộc Khối Cảm Biến. Đây là một module cảm biến đa năng, cung cấp dữ liệu đầu vào quan trọng (gia tốc, góc quay, từ trường, áp suất, nhiệt độ) để vi điều khiển có thể xử lý, đưa ra quyết định và điều khiển robot hoạt động chính xác.
Bảng thông số kỹ thuật (Technical Specs)
| Thông số |
Giá trị |
| Module chính |
GY-87 10DOF |
| Cảm biến tích hợp |
- MPU6050: Cảm biến gia tốc 3 trục & Con quay hồi chuyển 3 trục (IMU 6-axis)
- HMC5883L: La bàn số 3 trục (Magnetometer)
- BMP180: Cảm biến áp suất khí quyển & nhiệt độ (Barometer & Thermometer)
|
| Tổng số bậc tự do (DOF) |
10 (3 Gia tốc + 3 Con quay hồi chuyển + 3 Từ trường + 1 Áp suất) |
| Điện áp hoạt động |
3V – 5V (tích hợp bộ điều chỉnh điện áp LDO) |
| Giao tiếp |
I2C (SCL, SDA) |
| Dải đo Gia tốc (MPU6050) |
±2g, ±4g, ±8g, ±16g (có thể cấu hình) |
| Dải đo Con quay hồi chuyển (MPU6050) |
±250, ±500, ±1000, ±2000 °/s (có thể cấu hình) |
| Dải đo Từ trường (HMC5883L) |
±1.3 đến ±8.1 Gauss |
| Dải đo Áp suất (BMP180) |
300 ~ 1100 hPa |
| Dải đo Nhiệt độ (BMP180) |
-40 ~ +85 °C |
| Kích thước Module |
Khoảng 22mm x 17mm |
Sơ đồ chân & Đấu nối (Pinout)
Mạch GY-87 sử dụng giao tiếp I2C, rất dễ dàng đấu nối với các vi điều khiển phổ biến như Arduino, ESP32, hoặc Raspberry Pi. Dưới đây là sơ đồ chân cơ bản:
- VCC: Chân cấp nguồn dương (3V – 5V).
- GND: Chân nối đất.
- SCL: Nối với chân SCL trên vi điều khiển.
- SDA: Nối với chân SDA trên vi điều khiển.
- AD0: (Tùy chọn) Chân chọn địa chỉ I2C cho MPU6050. Mặc định thường được kéo xuống GND (địa chỉ 0x68). Nếu kéo lên VCC, địa chỉ sẽ là 0x69.
- INT: (Tùy chọn) Chân ngắt của MPU6050. Có thể dùng để nhận tín hiệu ngắt từ MPU6050 khi có sự kiện (ví dụ: phát hiện chuyển động).
Lời khuyên của Kỹ sư (Engineer's Tips)
Với vai trò là Kỹ sư Trưởng tại RETOBOTS, tôi có vài lời khuyên để bạn sử dụng module GY-87 hiệu quả nhất:
- Tương thích dễ dàng: GY-87 là lựa chọn tuyệt vời cho các dự án Drone, Robot tự cân bằng, hoặc hệ thống định vị quán tính (INS) nhờ khả năng cung cấp dữ liệu đa dạng từ nhiều cảm biến trên cùng một board.
- Cấp nguồn an toàn: Mạch tích hợp sẵn bộ điều chỉnh điện áp (LDO), cho phép bạn cấp nguồn từ 3V đến 5V. Tuy nhiên, các cảm biến trên mạch hoạt động ở mức logic 3.3V. Đảm bảo vi điều khiển của bạn tương thích với mức logic này hoặc sử dụng bộ chuyển đổi mức logic (level shifter) nếu vi điều khiển của bạn hoạt động ở 5V (như Arduino Uno) để tránh hư hỏng linh kiện.
- Thư viện phần mềm: RETOBOTS khuyến nghị sử dụng các thư viện phổ biến và được hỗ trợ tốt như thư viện `Adafruit MPU6050`, `Adafruit Unified Sensor`, `Adafruit BMP085/BMP180` cho Arduino hoặc tương đương cho các nền tảng khác. Các thư viện này giúp bạn đọc dữ liệu từ từng cảm biến một cách dễ dàng.
- Hiệu chuẩn là chìa khóa: Để đạt được độ chính xác cao nhất, đặc biệt với MPU6050 (gia tốc, con quay) và HMC5883L (la bàn), bạn cần thực hiện quy trình hiệu chuẩn (calibration). Hiệu chuẩn giúp bù sai số offset và độ nhạy của cảm biến, đặc biệt quan trọng khi khởi động robot hoặc thay đổi môi trường hoạt động.
- Tránh nhiễu: Cảm biến từ trường HMC5883L rất nhạy cảm với nhiễu điện từ. Hạn chế đặt module GY-87 gần các động cơ, dây điện có dòng cao, hoặc nguồn nhiễu từ trường khác để đảm bảo dữ liệu la bàn chính xác.
- Quản lý địa chỉ I2C: MPU6050 có thể thay đổi địa chỉ I2C (0x68 hoặc 0x69) thông qua chân AD0. HMC5883L và BMP180 có địa chỉ I2C cố định (thường là 0x1E và 0x77 tương ứng). Đảm bảo không có xung đột địa chỉ nếu bạn có các thiết bị I2C khác trên cùng bus.