Cảm biến gia tốc ADXL345

80.000₫
Tình trạng: Còn hàng
  • Thương hiệu: VĐ-ELECTRONIC
  • Dòng sản phẩm: DROP SHIP
  • Miễn phí giao hàng trong nội thành Đà Nẵng
Cảm Biến Accelerometer 3 Trục ADXL345 được sử dụng để đo gia tốc hướng (Accelerometer) hoặc độ rung động (tilt) theo 3 trục x, y, z, cảm biến dễ sử dụng với giao tiếp I2C. Thông số kỹ thuật Nguồn sử dụng: 3~5VDC Dòn...

Cảm Biến Accelerometer 3 Trục ADXL345 được sử dụng để đo gia tốc hướng (Accelerometer) hoặc độ rung động (tilt) theo 3 trục x, y, z, cảm biến dễ sử dụng với giao tiếp I2C.

Thông số kỹ thuật

  • Nguồn sử dụng: 3~5VDC

  • Dòng sử dụng: 30uA

  • Điện áp giao tiếp: 3~5VDC

  • Chuẩn giao tiếp I2C / SPI

  • Measuring Ranging: ±2g±16g 4

  • 3-axis, ±2g/±4g/±8g/±16g

  • Compact Accelemotor/Inclinometer

  • Low Power Consumption

Code Cảm Biến Accelerometer 3 Trục ADXL345

/*
    Arduino and ADXL345 Accelerometer Tutorial
     by Dejan, https://howtomechatronics.com
*/

#include <Wire.h>  // Wire library - used for I2C communication

int ADXL345 = 0x53; // The ADXL345 sensor I2C address

float X_out, Y_out, Z_out;  // Outputs

void setup() {
  Serial.begin(9600); // Initiate serial communication for printing the results on the Serial monitor
  Wire.begin(); // Initiate the Wire library
  // Set ADXL345 in measuring mode
  Wire.beginTransmission(ADXL345); // Start communicating with the device 
  Wire.write(0x2D); // Access/ talk to POWER_CTL Register - 0x2D
  // Enable measurement
  Wire.write(8); // (8dec -> 0000 1000 binary) Bit D3 High for measuring enable 
  Wire.endTransmission();
  delay(10);
}

void loop() {
  // === Read acceleromter data === //
  Wire.beginTransmission(ADXL345);
  Wire.write(0x32); // Start with register 0x32 (ACCEL_XOUT_H)
  Wire.endTransmission(false);
  Wire.requestFrom(ADXL345, 6, true); // Read 6 registers total, each axis value is stored in 2 registers
  X_out = ( Wire.read()| Wire.read() << 8); // X-axis value
  X_out = X_out/256; //For a range of +-2g, we need to divide the raw values by 256, according to the datasheet
  Y_out = ( Wire.read()| Wire.read() << 8); // Y-axis value
  Y_out = Y_out/256;
  Z_out = ( Wire.read()| Wire.read() << 8); // Z-axis value
  Z_out = Z_out/256;

  Serial.print("Xa= ");
  Serial.print(X_out);
  Serial.print("   Ya= ");
  Serial.print(Y_out);
  Serial.print("   Za= ");
  Serial.println(Z_out);
}