Hello Sahabat Anak Kendali.
pada kesempatan kali ini saya akan menuliskan tutorial tentang Arduino, Cara Mengakses Sensor Accelerometer ADXL345
sebelumnya juga saya sudah menulis Artikel tentang Sensor Accelerometer tipe MPU6050, dan kali ini saya mencoba menulis dengan tipe sensor yang berbeda yaitu ADXL345
Keyword :
Cara Mengakses Sensor ADXL345
Sensor Accelerometer
Sensor Percepatan
Sensor untuk Keseimbangan
Arduino Sensor ADXL345
Sensor ADXL345 Arduino
Sensor ini bisa di akses dengan komunikasi SPI maupun I2C, dan pada artikel ini saya membuat tutorialnya dengan menggunakan komunikasi I2c, karena I2c lebih hemat kabel dari pada SPI,
baiklah berikut adalah skematik rangkaian Arduino dan Sensor ADXL345.
berikut adalah program untuk mengakses Sensor Adxl345 dengan tambahan 3 LED
#include <Wire.h>
#define ADXL_ADDR (0x53)
byte val [6];
int x,y,z;
void setADXL345(){
Wire.beginTransmission(ADXL_ADDR);
Wire.write(0x2D);
Wire.write(0);
Wire.endTransmission();
Wire.beginTransmission(ADXL_ADDR);
Wire.write(0x2D);
Wire.write(16);
Wire.endTransmission();
Wire.beginTransmission(ADXL_ADDR);
Wire.write(0x2D);
Wire.write(8);
Wire.endTransmission();
}
void bacaXYZ(){
int xyzreg = 0x32;
Wire.beginTransmission(ADXL_ADDR);
Wire.write(xyzreg);
Wire.endTransmission();
Wire.beginTransmission(ADXL_ADDR);
Wire.requestFrom(ADXL_ADDR, 6);
int i = 0;
while (Wire.available()){
val[i] = Wire.read();
i++;
}
Wire.endTransmission();
x = (((int) val[1]) <<8) | val[0];
y = (((int) val[3]) <<8) | val[2];
z = (((int) val[5]) <<8) | val[4];
}
void setup() {
// put your setup code here, to run once:
pinMode(5, OUTPUT);
pinMode(7, OUTPUT);
pinMode(9, OUTPUT);
Wire.begin();
Serial.begin(9600);
setADXL345();
}
void loop() {
// put your main code here, to run repeatedly:
bacaXYZ();
if (x > 3){
digitalWrite(5, 1);
digitalWrite(7, 1);
digitalWrite(9, 0);
}
else if (x > -1 && x < 1){
digitalWrite(5, 1);
digitalWrite(7, 0);
digitalWrite(9, 1);
}
else if (x < - 1){
digitalWrite(5, 0);
digitalWrite(7, 1);
digitalWrite(9, 1);
}
Serial.print(x);
Serial.print("|");
Serial.print(y);
Serial.print("|");
Serial.println(z);
}
mungkin cukup sekian tutorial kali ini, semoga bermanfaat buat kita semua, jika ada yang ingin di tanyakan, silahkan Tulis di komentar, atau chat langsung dengan saya, dengan cara menekan tombol WA di bawah pojok halaman ini.