Giới thiệu cảm biến ADXL335 đo gia tốc góc
GY-61 ADXL335 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,…
Chức năng các chân
- Vcc : chân nguồn dương 5V
- X: Chân đọc Analog trục X
- Y : Chân đọc Analog trục Y
- Z : Chân đọc Analog trục Z
- GND: Chân cấp nguồn 0V
Thông số kỹ thuật cảm biến ADXL335 đo gia tốc góc
- Tên Module: ADXL335 (ngõ ra tương tự tín hiệu gia tốc ba trục)
- Sử dụng Chip: ADXL335
- Nguồn cung cấp: 3~5VDC
- Chuẩn giao tiếp : Analog X, Y, Z
- Mã góc độ đầu ra trực tiếp
- Kích thước: 15.7mm*20.3mm
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
Chương trình Test sản phẩm
Nguyên lý kết nối
Chương trình
const int xInput = A0; const int yInput = A1; const int zInput = A2; // initialize minimum and maximum Raw Ranges for each axis int RawMin = 0; int RawMax = 1023; // Take multiple samples to reduce noise const int sampleSize = 10; void setup() { analogReference(EXTERNAL); Serial.begin(9600); } void loop() { //Read raw values int xRaw = ReadAxis(xInput); int yRaw = ReadAxis(yInput); int zRaw = ReadAxis(zInput); // Convert raw values to 'milli-Gs" long xScaled = map(xRaw, RawMin, RawMax, -3000, 3000); long yScaled = map(yRaw, RawMin, RawMax, -3000, 3000); long zScaled = map(zRaw, RawMin, RawMax, -3000, 3000); // re-scale to fractional Gs float xAccel = xScaled / 1000.0; float yAccel = yScaled / 1000.0; float zAccel = zScaled / 1000.0; Serial.print("X, Y, Z :: "); Serial.print(xRaw); Serial.print(", "); Serial.print(yRaw); Serial.print(", "); Serial.print(zRaw); Serial.print(" :: "); Serial.print(xAccel,0); Serial.print("G, "); Serial.print(yAccel,0); Serial.print("G, "); Serial.print(zAccel,0); Serial.println("G"); delay(200); } // Take samples and return the average int ReadAxis(int axisPin) { long reading = 0; analogRead(axisPin); delay(1); for (int i = 0; i < sampleSize; i++) { reading += analogRead(axisPin); } return reading/sampleSize; }
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:
Reviews
There are no reviews yet.