● online
- Motor Servo MG995 TowerPro Metal Gear....
- LCD 16x2 / 1602 Display Arduino Raspberry LCD 16 x....
- B0505S-1W 5V to 5V converter DC DC power module co....
- Relay Module 1 Channel Modul Relay 5V 10A 1 Channe....
- Raspberry Pi Pico Microcontroller Board....
- Dual Volt Amp Meter Digital Ampere Meter Voltmeter....
- LCD 16x2 / 1602 Display Biru + I2C Backpack Sudah ....
- IIC I2C LCD 1602 16x2 2004 20x4 Backpack for LCD A....
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Tutorial Mengambil Data Sudut dengan Sensor GY-50 L3G4200D berbasis Arduino Uno
Gyroscope adalah alat yang mengukur seberapa cepat sebuah benda berputar, yaitu kecepatan rotasinya di sumbu X, Y, dan Z. Modul L3G4200D adalah salah satu gyroscope tiga sumbu yang populer di kalangan para pembuat dan pengembang sistem tertanam karena ukurannya yang kecil, kebutuhan daya yang rendah, dan kemampuannya memberikan data rotasi yang cukup akurat untuk berbagai aplikasi baik hobi maupun untuk prototipe profesional. Sensor ini sering digunakan dalam proyek seperti stabilisator kamera, robot yang seimbang sendiri, pengendali penerbangan untuk drone, sistem navigasi inersial, serta mendeteksi gerakan pada antarmuka berbasis gerakan.
Dalam tutorial ini, kita akan membahas L3G4200D dari awal, mulai dari penjelasan fungsinya, cara penyambungan yang aman, sampai contoh kode sederhana yang dapat kamu coba dengan Arduino. Selain langkah-langkah praktis, kamu juga akan mendapatkan penjelasan singkat tentang cara membaca nilai gyroscope, serta tips mengatasi masalah yang sering muncul ketika pertama kali menggunakan sensor ini. Tujuannya adalah agar kamu tidak hanya dapat mengoperasikan sensor, tetapi juga memahami kapan dan bagaimana hasilnya dapat diterapkan dalam proyek nyata. Jika kamu sudah siap, mari kita lanjutkan ke bagian komponen, penyambungan, dan contoh kodenya.
2. Mengenal Pin L3G4200D
Pada modul, biasanya kamu akan menemukan pin berikut:
| Pin | Fungsi |
|---|---|
| VCC | Input tegangan |
| GND | Ground |
| SCL | Clock I2C |
| SDA | Data I2C |
| CS | Pilih mode komunikasi (I2C/SPI) |
| SDO | Alamat I2C (LOW = 0x68, HIGH = 0x69) |
| DR / INT | Pin interrupt |
Alat dan Bahan yang Diperlukan
Untuk menjalankan proyek ini, berikut yang kamu butuhkan :
- Modul Gyroscope L3G4200D
- Arduino Uno
- Kabel jumper
- Breadboard
Wiring Rangkaian Sensor Gy-50 L3G4200D
- Pin VCC ke 5v
- Pin GND ke GND
- Pin SCL ke A5
- Pin SDA ke A40
- Pin SD0 ke 5V (untuk alamat 0x69)
- Pin CS ke 5v

Gambar 1. Wiring Rangkaian Sensor Gy-50 L3G4200D
Library yang Digunakan
L3G4200D tidak termasuk dalam library default Arduino, jadi kita menggunakan library dari komunitas.
Install library berikut:
- Buka Arduino IDE
- Menu Sketch → Include Library → Manage Libraries
- Cari: L3G4200D (by Lukasz)
- Klik Install
Menulis Program Sensor Gy-50 L3G4200D
Setelah semua komponen terpasang, buka software Arduino IDE dan tulis kode berikut :
#include <Wire.h>
#define L3G4200D_Address 105 // 0x69
void setup() {
Serial.begin(9600);
Wire.begin();
setupL3G4200D(2000); // range ±2000 dps
}
void loop() {
int x, y, z;
readGyro(&x, &y, &z);
Serial.print("X: "); Serial.print(x);
Serial.print(" | Y: "); Serial.print(y);
Serial.print(" | Z: "); Serial.println(z);
delay(200);
}
void setupL3G4200D(int scale){
writeReg(0x20, 0x0F);
writeReg(0x23, 0x30);
}
void readGyro(int* x, int* y, int* z){
Wire.beginTransmission(L3G4200D_Address);
Wire.write(0x28 | 0x80);
Wire.endTransmission();
Wire.requestFrom(L3G4200D_Address, 6);
*x = Wire.read() | (Wire.read() << 8);
*y = Wire.read() | (Wire.read() << 8);
*z = Wire.read() | (Wire.read() << 8);
}
void writeReg(byte reg, byte val){
Wire.beginTransmission(L3G4200D_Address);
Wire.write(reg);
Wire.write(val);
Wire.endTransmission();
}
Penjelasan Kode
HMC5883L_Address: alamat I2C dari modul GY-50 (HMC5883L) yang digunakan untuk komunikasi data antara Arduino dan sensor.initHMC5883L(): fungsi untuk menginisialisasi sensor, mengatur mode pengukuran, konfigurasi register, dan memastikan sensor aktif sebelum membaca data.readHMC5883L(): mengambil data medan magnet dari tiga sumbu sensor (x,y,z) melalui register internal menggunakan komunikasi I2C.x,y,z: variabel yang menyimpan nilai medan magnet mentah untuk masing-masing sumbu dari sensor GY-50.atan2(y, x): rumus untuk menghitung arah kompas dari dua komponen medan magnet;atan2menentukan kuadran arah secara otomatis sehingga lebih akurat.heading: variabel yang menyimpan hasil sudut kompas dalam derajat setelah konversi dari radian; nilai inilah yang menjadi arah utara relatif.if (heading < 0) heading += 360;: memastikan hasil sudut tetap berada pada rentang 0°–360° dengan menghilangkan nilai negatif.
Cara Membaca Nilai Gyroscope
Sensor akan mengeluarkan nilai rotasi dalam satuan DPS (Degree Per Second).
Interpretasinya:
- X naik → sensor miring ke depan/belakang
- Y naik → sensor miring kiri/kanan
- Z naik → sensor diputar seperti memutar koin
Jika kamu gerakkan modul, nilai akan berubah cepat sesuai kecepatan rotasi.
Apa yang Akan Terjadi dengan Sensor GY-50?
Ketika rangkaian GY-50 dinyalakan dan koneksi I2C berada dalam kondisi yang benar, sensor akan mulai melakukan pembacaan gyro secara kontinu pada sumbu X, Y, dan Z. Setiap perubahan orientasi atau getaran kecil akan menghasilkan nilai kecepatan sudut yang berbeda-beda, dan data tersebut akan tampil di Serial Monitor secara stabil tanpa adanya lonjakan nilai yang tidak wajar. Hal ini menunjukkan bahwa konfigurasi mode I2C dan proses pembacaan register internal sensor berjalan dengan baik.
Jika rangkaian diberi gangguan seperti goyangan cepat atau rotasi mendadak, nilai output akan berubah secara responsif sesuai arah gerakan. Sebaliknya, ketika sensor didiamkan, data akan cenderung berada pada angka yang konstan sehingga memudahkan proses kalibrasi. Jika tombol reset pada sistem ditekan, Arduino akan menginisialisasi ulang komunikasi I2C, membuat sensor menjalankan konfigurasi awal kembali, dan pembacaan nilai gyro dimulai dari kondisi yang bersih tanpa data sisa dari proses sebelumnya.
Tutorial Mengambil Data Sudut dengan Sensor GY-50 L3G4200D berbasis Arduino Uno
Thingsboard merupakan sebuah platform IoT open-source yang memungkinkan anda untuk mengontrol ataupun memonitoring berbagai perangkat. Penggunaanya mudah, gratis dan... selengkapnya
Phyton merupakan bahasa yang sangat populer saat ini. Bahasa yang dibuat oleh Guido Van Rossum pada tahun 1991 ini... selengkapnya
Rotary encoder adalah sebuah perangkat elektronik yang mampu mengkonversi gerakan mekanis berputar menjadi sinyal listrik, menjadi elemen kunci dalam memenuhi... selengkapnya
Pulse sensor merupakan sensor yang berfungsi untuk mengukur banyaknya detak jantung dengan satuan menit atau BPM (Beats Per Minutes). Pada... selengkapnya
Telegram adalah sebuah aplikasi chating yang cukup banyak penggunanya dan telegram ini dapat menjawab sendiri sesuai dengan perintah yang... selengkapnya
I2C merupakan sebuah modul komunikasi serial dua arah yang berfungsi untuk mengirim dan menerima data. Keduanya adalah SCL (Serial... selengkapnya
Sensor INA219 merupakan sensor yang berfungsi untuk mengukur 2 parameter sekaligus yaitu tegangan (volt) dan arus (ampere). Tegangan yang... selengkapnya
Pernah suatu ketika axis X, Y, atau z CNC kita berubah, gcode yang sudah jadi setelah di running tidak... selengkapnya
Oke sekarang kita akan belajar menyalakan LED dengan Blynk NodeMCU. Tentunya anda semua sudah menginstal aplikasi Blynk kan ya…... selengkapnya
Dulu kita sudah belajar untuk mengisi bootloader Arduino Uno ke IC Atmega328 juga, namun dengan jenis DIP (LIHAT DISINI).... selengkapnya
12A 300W DC Buck Step Down Converter CC CV Driver LED charge Battery Spesifikasi: Input Voltage: 5-40V Output Voltage: 1.2-35V… selengkapnya
Rp 39.400Dimmer AC 220 Volt 4000 Watt + Casing Aluminium Potensiometer untuk mengatur tegangan output min/max pada tegangan AC PLN 220V…. selengkapnya
Rp 52.500Case patern: Solid Warna : Merah dan Hijau Current: 10-20 mA Diameter: 3mm
Rp 300Description: TP5100 is a double switch buck 8.4V, single cell 4. 2V lithium battery charge management chip. Its ultra-compact QFN16… selengkapnya
Rp 10.600ESP-WROOM-32 is Powered by Espressif’s most advanced SoC, the ESP-WROOM-32 features high performance, a wide range of peripherals, Wi-Fi and… selengkapnya
Rp 38.400Harga untuk 10pcs Resistance: 220 Ohm Wattage Rating: 0.25 Watt Tolerance: 1% Metal Film Lead Free ROHS compliant
Rp 1.500Dual Volt Amp Meter Digital Ampere Meter Voltmeter 10A 0-100V Ammeter Dilengkapi dengan pengukuran Voltmeter dan Amperemeter dalam 1 display… selengkapnya
Rp 26.500Features: It is of high power density, high efficiency, high-reliability, small size and lightweight. It can isolate unsteady single-way voltage… selengkapnya
Rp 18.500Kinerja Produk: Warnanya coklat (amber), Goldfinger tape sticky baik, patuh, suhu tinggi, pelarut, tidak ada rembesan timah dan tidak ada… selengkapnya
Rp 11.900Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800

Saat ini belum tersedia komentar.