Đọc Cảm Biến Mpu6050 Arduino

Các bạn sử dụng điện thoại đã từng chơi qua những game như đua xe, lắc banh … Thường khi chơi những game đó các bạn phải nghiêng, xoay điện thoại đúng chứ. Vậy thì làm sao một chiếc điện thoại lại biết bạn nghiêng hay xoay? Hôm nay, bài viết này sẽ giải đáp cho bạn điều đó, cảm biến gia tốc, góc nghiêng là chủ đề của bài viết hôm nay.

Bạn đang xem: Đọc cảm biến mpu6050 arduino

IMU và DOF

Đầu tiên, ta sẽ nói đến hai khái niệm IMU và DOF. IMU (Inertial Measurement Unit) là một con chip để đo những chuyển động như trên. một module IMU thường gồm có 2 loại cảm biến: cảm biến gia tốc (accelerometer) và cảm biến quay (gyroscope).

Accelerometer (gọi tắt là accel): như tên gọi của nó, accel đơn giản là một cảm biến đo gia tốc của bản thân module và thường sẽ có 3 trục xyz ứng với 3 chiều không gian (loại 1 và 2 trục ít dùng). Lưu ý là accel đo cả gia tốc của trọng lực nên giá trị thực khi đo sẽ bao gồm cả trọng lực.Gyroscope (gọi tắt là gyro): là một loại cảm biến đo tốc độ quay của nó quanh một trục. Tương tự với accel, gyro cũng thường có 3 trục xyz.

Một ví dụ đơn giản, khi bạn đặt một con chip IMU thẳng đứng như trên và để im không chuyển động, giá trị trả về sẽ là accel = <0.0, -9.8, 0.0>gyro = <0.0, 0.0, 0.0> do chỉ có trọng lực trái đất tác dụng lực và không có bất cứ chuyển động quay nào cả. Lưu ý rằng gyro chỉ đo tốc độ quay chứ không đo trực tiếp góc quay, nên khi bạn quay module một góc nào đó rồi dừng, giá trị của gyro sẽ tăng lên rồi hạ xuống về 0.

Xem thêm: ★ Găng Tay Y Tế Latex Không Bột, Găng Tay Nitrile

Vậy còn DOF ? Một module IMU đầy đủ sẽ được gọi là6-DOF(6 Degrees Of Freedom) tức là 6 trục độc lập (3 của accel và 3 của gyro). Tuy vậy đôi khi như thế vẫn là không đủ, những dự án phức tạp hơn như là điều hướng máy bay hoặc robot có thể sẽ cần đến9-DOF(thêm một cảm biến từ trường 3 trục -magnetometer- hoạt động gần giống một la bàn để định hướng), hoặc10-DOF(thêm một áp kế -barometer- dùng để đo độ cao) hoặc thậm chí11-DOF(thêm module GPS để xác định vị trí). Phù, quá nhiều trục phải không? Đừng lo, phần lớn các ứng dụng có thể làm tại nhà chỉ cần một IMU 6-DOF là đủ.

Với chip IMU này các bạn có thể làm được nhiều món đồ "chơi" như:

Robot 2 bánh tự cân bằngMáy bay điều khiển từ xa (drone)Chuột máy tính trên khôngTay cầm chơi gameHệ thống giữ thăng bằng cho camera/máy ảnh.Các ứng dụng: đếm số bước chân, cảm biến rơi, cảm biến rung/lắc...

*

MPU6050 có kèm sensor fusion sẵn trên chip (gọi là DMP - Digital Motion Processor), breakout board có thể tìm thấy: GY-521 breakout board (không rõ xuất xứ, nhưng rẻ), breakout board của Sparkfun (đắt hơn kha khá). MPU6050 sử dụng giao thức I2C. Các bạn có thể tìm hiểu thêm cùng với thư viện Wire (có sẵn trong Arduino IDE)

Khi tìm hiểu về MPU-6050, các bạn sẽ gặp phải thuật ngữ QUATERNION, YAW, PITCH, ROLL. Và theo mình, đây là cách giải thích đơn giản và dể hiểu nhất:

Yaw, Pitch, Roll:https://kienthucbay.wordpress.com/tag/ailerons/

Thư viện MPU6050:https://maimoikethon.com/source/library/MPU6050.rar

Thư viện I2Cdev:https://maimoikethon.com/source/library/I2Cdev.rar

Chuẩn bị

Arduino UnoDây cắm testboardMPU6050

Lắp mạch

*

Còn trong Processing thì chỉnh cổng COM lại cho phù hợp với COM của arduino tại dòng 71.

Leave a Reply

Your email address will not be published. Required fields are marked *

  • Tranh tô màu cho bé gái 4 tuổi

  • True beauty dàn diễn viên

  • Xi măng vissai ninh bình

  • Các mẫu thêu tay trên áo

  • x

    Welcome Back!

    Login to your account below

    Retrieve your password

    Please enter your username or email address to reset your password.