Giới thiệu cảm biến GY-511 đo gia tốc góc
Cảm biến GY-511 là một cảm biến gia tốc 3 trục nhỏ gọn, mỏng, công suất thấp hoàn chỉnh với các đầu ra điện áp được điều chỉnh tín hiệu. Nó có thể đo gia tốc tĩnh của trọng lực trong các ứng dụng cảm biến độ nghiêng, cũng như gia tốc động do chuyển động, sốc hoặc rung. Cảm biến này đi kèm với một bộ điều chỉnh điện áp trên bo mạch và hoạt động ở cả 3.3V và 5V.
Cảm biến gia tốc này được ứng dụng trong nhiều lĩnh vực khác nhau như: hệ thống FPV, RC và Robot, hệ thống định vị GPS, thiết bị đầu vào trò chơi và thực tế ảo, giám sát và bù rung, phát hiện rơi tự do, phát hiện định hướng 6D,… thường được dùng để xác định hướng chuyển động và hướng từ trường của trái đất nhằm xác định phương hướng với độ chính xác cao.

Chức năng các chân
- 3V3: chân nguồn dương 3.3V
- Vcc : chân nguồn dương 5V
- GND: Chân cấp nguồn 0V
- DRDY : Chân sẵn sàng dữ liệu
- L1 : Chân ngắt 1
- L2 : Chân ngắt 2
- SDA: Chân dữ liệu I2C
- SCL : Chân tạo xung I2C

Thông số kỹ thuật cảm biến GY-511 đo gia tốc góc
- Điện áp sử dụng: 3~5VDC
- Điện áp giao tiếp: 3~5VDC
- Chuẩn giao tiếp: I2C
- Số trục : 3 trường và 3 trục gia tốc
- Phạm vi của trường: ± 1.3 to ±8.1
- Phạm vi tăng tốc: ±2g/±4g/±8g/±16g
- Số bit output: 16 bit data output.
- Tính năng: Chế độ chờ
- Cảm biến tích hợp: Nhiệt độ nhúng
- Góc phát hiện: 6DOF
- Kích thước: 14.5 x 20.5mm
Một số ứng dụng
- Trò chơi cảm biến chuyển động
- Thực tế tăng cường
- Ổn định hình ảnh điện tử (EIS: Ổn định hình ảnh điện tử)
- Ổn định hình ảnh quang học (OIS: Ổn định hình ảnh quang học)
- Định hướng cho người đi bộ
- Giao diện người dùng cử chỉ “không chạm”
- Phím tắt tư thế
- Chứng nhận
- Điện thoại thông minh
- Thiết bị máy tính bảng
- Sản phẩm chơi game cầm tay
- Điều khiển từ xa 3D
- Thiết bị định vị di động
Sơ đồ nguyên lý

Chương trình Test sản phẩm
Nguyên lý kết nối

Chương trình
- Thư viện: Adafruit_Sensor.h hoặc tải trực tiếp trên Arduino IDE với tên Adafruit_Sensor
- Thư viện: Adafruit_LSM303_U.h hoặc tải trực tiếp trên Arduino IDE với tên Adafruit_LSM303_U
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_LSM303_U.h>
/* Assign a unique ID to this sensor at the same time */
Adafruit_LSM303_Mag_Unified mag = Adafruit_LSM303_Mag_Unified(12345);
// OUTPUT: Use digital pins 9-11, the Pulse-width Modulation (PWM) pins
// LED's cathodes should be connected to digital GND
int redPin = 9; // Red LED, connected to digital pin 9
int grnPin = 10; // Green LED, connected to digital pin 10
int bluPin = 11; // Blue LED, connected to digital pin 11
// Program variables
int redVal = 0; // Variables to store the values to send to the pins
int grnVal = 0;
int bluVal = 0;
int magnetometer = 0;
int magVal = 0; //Variable to store the input from the magnetometer
// Pi for calculations - not the raspberry type
const float Pi = 3.14159;
// This is the desired direction of travel
// expressed as a 0-360 degree compass heading
// 0.0 = North
// 90.0 = East
// 180.0 = South
// 270 = West
const float targetHeading = 0.0;
void setup()
{
Serial.begin(9600);
Serial.println("Magnetometer Test"); Serial.println("");
/* Initialise the sensor */
if(!mag.begin())
{
/* There was a problem detecting the LSM303 ... check your connections */
Serial.println("Ooops, no LSM303 detected ... Check your wiring!");
while(1);
}
pinMode(redPin, OUTPUT); // sets the pins as output
pinMode(grnPin, OUTPUT);
pinMode(bluPin, OUTPUT);
}
void loop(void)
{ /* Get a new sensor event */
sensors_event_t event;
mag.getEvent(&event);
// Calculate the angle of the vector y,x
float heading = (atan2(event.magnetic.y,event.magnetic.x) * 180) / Pi; // Normalize to 0-360
if (heading < 0)
{ heading = 360 + heading;
}
magVal = heading; // read the magnetometer
Serial.print("mag: "); Serial.print(magVal); Serial.print(" # ");
if (magVal < 91) // Lowest fourth of the magnetometer's range (0-90)
{ magVal = (magVal * 3) / 4; // Normalize to 0-68
redVal = 69 - magVal; // Red from full to off
grnVal = magVal; // Green from off to full
bluVal = 1; // Blue off
Serial.print("1: "); Serial.print(redVal); Serial.print(":");Serial.print(grnVal);
Serial.print(":"); Serial.println(bluVal);
}
else if (magVal < 181) // Lower middle fourth of magnetometer's range (91-180)
{ magVal = ( (magVal-91) * 3) / 4; // Normalize to 0-68
redVal = 1; // Red off
grnVal = 69 - magVal; // Green from full to off
bluVal = magVal; // Blue from off to full
Serial.print("2: "); Serial.print(redVal); Serial.print(":");Serial.print(grnVal);
Serial.print(":"); Serial.println(bluVal);
}
else if (magVal < 271)// Upper middle fourth of magnetometer"s range (181-270)
{ magVal = ( (magVal-182) * 3) / 4; // Normalize to 0-68
redVal = 1; // Red off
grnVal = 1; // Green off
bluVal = 69 - magVal; // Blue from full to off
Serial.print("3: "); Serial.print(redVal); Serial.print(":");Serial.print(grnVal);
Serial.print(":"); Serial.println(bluVal);
}
else // Upper fourth of magnetometer"s range (271-360)
{ magVal = ( (magVal-272) * 3) / 4; // Normalize to 0-68
redVal = 1; // Red of
grnVal = 1; // Green off
bluVal = 1; // Blue off
Serial.print("4: "); Serial.print(redVal); Serial.print(":");Serial.print(grnVal);
Serial.print(":"); Serial.println(bluVal);
}
analogWrite(redPin, redVal); // Write values to LED pins
analogWrite(grnPin, grnVal);
analogWrite(bluPin, bluVal);
}
Liên hệ làm mạch
- Phone: 0967.551.477
- Zalo: 0967.551.477
- Email: dientunhattung@gmail.com
- Chi tiết : Nhận làm mạch và hướng dẫn đồ án sinh viên
Tham khảo chương trình mẫu và thông tin linh kiện chi tiết tại:

Hàng rào Cái vuông đơn cong 1*40P 2.54mm, Jump header đơn 40 pin
ANTEN 433Mhz 6dBi 20CM KIM TRONG, ANTEN LORA, RF
Điện trở 560R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Dây bus 6pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Kìm cắt linh kiện YTH-101 93mm, Kìm cắt dây điện
CẦU DIODE KBPC610 DIP, CHỈNH LƯU TOÀN KỲ 6A - 1000V
Cảm biến nhiệt độ NTC 5K 6*30mm 1m, Nhiệt độ điện trở
Dây bus 8pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Dây bus 4pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Hàng rào đực đơn thẳng 1*40P 17mm 2.54mm, Jump header đơn 40 pin
Điện trở 12R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
MODULE ĐỘ ẨM ĐẤT, CẢM BIẾN ĐỘ ẨM
MODULE CẢM BIẾN DHT22 TỐT, ĐO NHIỆT ĐỘ VÀ ĐỘ ẨM
DS18B20 Dây, CẢM BIẾN NHIỆT ĐỘ - 2M
Bàn phím mềm keypad 1x4, Ma trận phím mềm
CẢM BIẾN MQ2, CẢM BIẾN NỒNG ĐỘ KHÍ GA
Module Lora SX1278 433Mhz AS32, Module thu phát không dây
Dây bus 4pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
TRANSISTOR PNP 2N3906 DIP, HOẠT ĐỘNG 40V VÀ 200mA
Dây chuyển 1ipex sang SMA 11mm lỗ trong 10cm, Dây chuyển ipex 1
Module thu phát NRF24L01 2.4Ghz anten liền, Truyền nhận không dây RF
Bàn phím cứng keypad 4x4 , Ma trận phím matrix 4x4
CẢM BIẾN DS18b20, NHIỆT ĐỘ MÔI TRƯỜNG - LOẠI TỐT
Bộ khung xe robot 4 bánh 2 tầng, Khung xe mô hình 4 bánh
Điện trở 1R2 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
ANTEN LORA 433Mhz 3dBi 5CM, THU PHÁT KHÔNG DÂY RF
CẢM BIẾN MQ7, CẢM BIẾN KHÍ CO (CARBON MONOXIDE)
CẦU DIODE KBL608 DIP, CHỈNH LƯU TOÀN KỲ 6A - 800V
ANTEN 433Mhz 12dBi KIM TRONG 31CM, ANTEN LORA 433MHz 















Đánh giá
Chưa có đánh giá nào.