Altimeter ,Accelerometer ,Tilt meter, Barometer, Temperature and Compass sensor With GY-87 + Oled LCD
Project ini adalah kelanjutan dari materi sebelumnya : http://www.belajarduino.com/2016/12/gy-87-tutorial-dan-sample-code.html
Sensor GY-87 sebuah device i2C gabungan dari 3 buah Sensor, yaitu :
MPU6050 : Accelerometer Sensor (Address is 0x68) HMC5883L : Digital Compass Sensor (Address is 0x1E) BMP180 : Barometer & Temperature Sensor (Address is 0x77)
Dari sebuah sensor GY-87 kita dapat memperoleh Out data berupa :
*3 Axis Accelerometer and rotation (x,y,z) -> from MPU6050 device *Compass Data/Dirrection (angle) -> from HMC5883L device *Air Pressure, Altimeter and Temperature -> from BMP180 device
Beli Sensor GY-87 di Tokopedia Rajacell Beli Beli LCD Oled 0.96" Putih di Tokopedia Rajacell Beli Beli LCD Oled 0.96" Biru di Tokopedia Rajacell Beli Beli LCD Oled 0.96" Biru-Kuning di Tokopedia Rajacell Beli Beli LCD Push Button di Tokopedia Rajacell Beli
Kita akan menggunakan 2 buah Device i2C/TWI menggunakan 1 koneksi SDA SCL
Berikut adalah Wiring Sensor GY-87 dengan Arduino
Wiring Pin LCD Oled 0.96 inch ke Arduino :
Pin GND LCD --> ke Pin GND Arduino Pin VCC LCD --> ke Pin 5V Arduino Pin SCL LCD --> ke Pin SCL(A5) Arduino Pin SDA LCD --> ke Pin SDA (A4) Arduino
Untuk Arduino Uno / Nano / Pro mini Pin SDA adalah pin A4 dan SCL adalah A5 Untuk Arduino Mega2560 Pin SDA adalah pin 20(D20) dan SCL adalah 21 (D21)
Wiring Push button ke Arduino : Hubungkan 1 sisi push button (Momentary Normally Open)dengan D3 dan sisi lainya dengan Pin GND Arduino. Anda bisa menggunakan tombol push button jenis apapun asal tidak mengunci (hanya momentary saja).
Berikut adalah Library yang dibutuhkan Sensor GY-87 pada sistem Arduino
Library "I2Cdev.h" Download Library "MPU6050.h" Download Library BMP180.h Download Library Adafruit_SSD1306.h Download Library Button.h Download Library "Wire.h" -> Sudah include di Arduino IDE
Lihat video cara memasukan Library baru ke dalam sistem arduino berikut ini Lihat Video
Setelah semua library sudah di download dan dimasukan ke dalam folder libraries..silahkan copy paste coding berikut ke dalam Arduino IDE anda.Saya menyarankan anda menggunakan Arduino IDE versi diatas 1.6.7 (jangan gunakan 1.6.10 dan 1.6.11).
Berikut adalah Contoh Source Code untuk Altimeter ,Accelerometer ,Tilt meter, Barometer, Temperature and Compass sensor dengan Oled LCD 0.96"i2C
Source Code:
//Sketch Coding ini dibuat Oleh Dani Ardianto untuk www.belajarduino.com //Anda bisa menggunakan source code ini secara gratis untuk tujuan Non-Komersial //Semua module yang dibutuhkan untuk Module ini dapat anda peroleh di Toko kami //Melalui portal Tokopedia www.tokopedia.com/rajacell //Apabila ada kendala dalam pembuatan project ini bisa didiskusikan melalui //Facebook Group Belajar Arduino : https://www.facebook.com/groups/255324164886376
//HMC5883L Digital Compass constinthmc5883Address=0x1E; constbytehmc5883ModeRegister=0x02; constbytehmcContinuousMode=0x00; constbytehmcDataOutputXMSBAddress=0x03;
//The BMP180 Digital Barometer BMP180barometer; // Store the current sea level pressure at your location in Pascals. floatseaLevelPressure=101325; intx,y,z;//triple axis data from HMC5883L.
voidsetup(){ Wire.begin(); //Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC,0x3C); display.clearDisplay(); display.display(); display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(0,0); display.println(F("GY-87 Sens")); display.display(); // initialize device //Serial.print("Initializing I2C devices..."); accelgyro.initialize(); // verify connection //Serial.println("Testing device connections..."); //Serial.println(accelgyro.testConnection() ? "MPU6050 connection successful" : "MPU6050 connection failed"); accelgyro.setI2CBypassEnabled(true);//This sets the bypass so the HMC5883L gets a look in.
//Initialise the Digital Compass Wire.beginTransmission(hmc5883Address); Wire.write(hmc5883ModeRegister); Wire.write(hmcContinuousMode); Wire.endTransmission();
display.setCursor(0,32); display.print(F("HMC5883 Starting")); display.display(); delay(250); for(inti=0;i<4;i++){ display.print(F(".")); display.display(); delay(250); } //Initialise the BMP180 Barometer (and Temperature Sensor) barometer=BMP180(); if(barometer.EnsureConnected()) { //Serial.println("Connected to BMP180."); barometer.SoftReset(); barometer.Initialize();
//Sketch Coding ini dibuat Oleh Dani Ardianto untuk www.belajarduino.com //Anda bisa menggunakan source code ini secara gratis untuk tujuan Non-Komersial //Semua module yang dibutuhkan untuk Module ini dapat anda peroleh di Toko kami //Melalui portal Tokopedia www.tokopedia.com/rajacell //Apabila ada kendala dalam pembuatan project ini bisa didiskusikan melalui //Facebook Group Belajar Arduino : https://www.facebook.com/groups/255324164886376
Video Hasil project
Apabila ada kendala dalam pembuatan project ini bisa didiskusikan melaluiFacebook Group Belajar Arduino : https://www.facebook.com/groups/255324164886376
GY-87 : Altimeter ,Accelerometer ,Tilt meter, Barometer, Temperature and Compass sensor With GY-87 + Oled LCD
Reviewed by MCH
on
January 28, 2017
Rating: 5
No comments: