Introduction
Jika Anda pernah mempelajari fisika, Anda pasti tahu bahwa giroskop adalah alat yang umumnya digunakan untuk mengukur posisi sudut. Terutama, digunakan dalam kendaraan. Jika Anda seorang gamer, maka Anda harus memahami istilah ini. Karena beberapa game seluler yang luar biasa menggunakan ini untuk mengontrol pergerakan. Karena mengurangi pekerjaan manual pemain. Oleh karena itu, ponsel yang menggunakan giroskop terbaik sangat diminati.
Oleh karena itu, smartphone menggunakan sensor untuk mengaktifkan giroskop. Juga, giroskop mungkin dari jenis yang berbeda. Namun pada tutorial kali ini kita akan membahas sensor MPU6050. Jadi, kita akan menghubungkan ” Sensor Giroskop Akselerometer MPU-6050 dengan Arduino UNO dan LCD”.
Prinsip Kerja Sensor Akselerometer Giroskop
Gagasan gaya Coriolis digunakan dalam sensor. Terutama, sensor mengubah laju rotasi menjadi sinyal listrik. Selanjutnya, ia merasakan kecepatan sudut. Juga, mendeteksi kecepatan sudut yang dihasilkan oleh gerakan sensor. Selain itu, mendeteksi getaran yang dihasilkan oleh elemen eksternal dan mengubahnya menjadi sinyal listrik.
Apa itu Accelerometer?Merupakan sensor berfungsi untuk mengukur percepatan suatu benda atau objek yang bergerak yang bersifat dynamic maupun static.
Pengukuran dynamic merupakan pengukuran percepatan pada objek benda yang bergerak, sedangkan pengukuran static merupakan pengukuran percepatan objek terhadap gravitasi bumi.
Untuk hal ini accelerometer lebih sering digunakan untuk mengukur sudut kemiringan (tilt) dan secara dasarnya prinsip kerja dari accelerometer yaitu menggunakan prinsip percepatan (acceleration).
Apa itu Gyroscope MPU6050
Gyroscope merupakan sensor yang berfungsi untuk menentukan orientasi gerak dengan bertumpu pada roda yang berotasi dengan cepat pada sumbu yang berdasarkan momentum sudut.
Sebelum digunakan, gyro sensor harus dilakukan kalibrasi terlebih dahulu dengan menggunakan bandul. Proses kalibrasi tersebut berfungsi untuk memperoleh nilai faktor kalibrasi.
Gyroscope memiliki keluaran berupa kecepatan sudut dari arah 3 sumbu yaitu, sumbu x yang nantinya akan menjadi sudut phi (kanan dan kiri) dari sumbu y nantinya menjadi sudut theta (atas dan bawah), dan sumbu z nantinya menjadi sudut psi (depan dan belakang).
Spesifikasi MPU-6050
MPU-6050 adalah giroskop 3 sumbu dan akselerometer 3 sumbu. Giroskop memperkirakan gravitasi rotasi. Sedangkan akselerometer mengukur ciptaan gravitasi. Jadi, ini menghitung percepatan pada sumbu X, Y, dan Z. Dengan menggunakan nilai akselerometer sensor ini, seseorang dapat menghitung sudut dengan mencoba trigonometri.
Code Explanation
- First, download the libraries MPU5060_tockn.h. You can download the libraries from:
https://github.com/tockn/MPU6050_tockn
Schematic Diagram
Jika Arduino di hubungkan dengan MPU5060 dan LCD 16x2 dengan LCD I2C module.
* Wiring Diagram (MPU6050 - Arduino)
VCC - 5V
GND - GND
SDA - SDA
SCL - SCL
* Wiring Diagram (LCD I2C - Arduino)
GND - GND
VCC - 5V
SDA - A4
SCL - A5
Coding
#include <MPU6050_tockn.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);
MPU6050 mpu6050(Wire);
void setup() {
Serial.begin(9600);
Wire.begin();
mpu6050.begin();
mpu6050.calcGyroOffsets(true);
// initialize the LCD,
lcd.begin();
// Turn on the blacklight and print a message.
lcd.backlight();
lcd.print("ZENTRONIC");
delay(5000);
}
void loop() {
mpu6050.update();
Serial.print("angleX : ");
Serial.print(mpu6050.getAngleX());
Serial.print(" angleY : ");
Serial.print(mpu6050.getAngleY());
Serial.print(" angleZ : ");
Serial.println(mpu6050.getAngleZ());
lcd.clear();// clearn previous values from screen
lcdDisplay(
// to print X:
0, // character 0
0, // line 0
"X:",
// to print AngleX
2, // character 2
0, // line 0
mpu6050.getAngleX()
);
lcdDisplay(
// to print Y:
8, // character 13
0, // line 0
"Y:",
// to print AngleY
10, // character 0
0, // line 1
mpu6050.getAngleY()
);
lcdDisplay(
// to print Z:
0, // character 7
1, // line 1
"Z:",
// to print AngleZ
2, // character 9
1, // line 0
mpu6050.getAngleZ()
);
delay(100);
}// loop end
void lcdDisplay(int tc, int tr, String title, int vc, int vr, float value)
{
lcd.setCursor (tc,tr);
lcd.print(title);
lcd.setCursor (vc,vr);
lcd.print(value);
}
Penjelasan Cara Kerja
Pertama, sambungkan Sensor Giroskop Akselerometer MPU-6050 dengan Arduino UNO. Kedua, Salin dan tempel kode di atas ke Arduino IDE Anda. Unggah kode di Arduino UNO. Jalankan serial monitor pada baud rate 9600 atau lihat parameter di LCD-nya. Dan, tekan tombol reset. Pindahkan sensornya. Ubah orientasinya. Anda dapat melihat pembacaan percepatan dan rotasi yang berbeda.
Tidak ada komentar:
Posting Komentar