Di bawah ini Anda akan menemukan semua komponen yang diperlukan untuk menyelesaikan tutorial Arduino ini. Setiap komponen mencakup tautan afiliasi ke berbagai marketplace tempat Anda dapat membelinya.
Gambar | Komponen | Deskripsi | Harga Terbaik | Beli |
---|---|---|---|---|
![]() | Arduino Uno Mikrokontroler | Mikrokontroler utama untuk project detektor gas. | Rp 58.980
di Shopee | |
![]() | Sensor Gas MQ-2 Sensor | Mendeteksi gas LPG, asap, dan hidrogen. | Rp 15.900
di Shopee | |
![]() | Layar OLED 128x64 I2C Display | Menampilkan status deteksi gas secara real-time. | Rp 22.900
di Tiktok | |
![]() | LED RGB LED | Indikator visual status (aman/bahaya). | Rp 690
di Tiktok | |
![]() | Resistor 220Ω Resistor | Membatasi arus pada LED RGB. | Rp 190
di Tokopedia | |
![]() | Buzzer Output | Alarm suara jika terdeteksi gas berbahaya. | Rp 1.500
di Tokopedia | |
![]() | Breadboard Prototipe | Untuk merangkai semua komponen tanpa solder. | Rp 8.500
di Shopee | |
![]() | Kabel Jumper Male-to-Male Kabel | Menghubungkan komponen di breadboard. | Rp 9.980
di Shopee | |
![]() | Kabel Jumper Male-to-Female Kabel | Menghubungkan komponen ke Arduino. | Rp 9.980
di Shopee | |
![]() | Kabel OTG USB C Kabel | Untuk menghubungkan Arduino ke HP Android. | Rp 27.502
di Tokopedia |
Mikrokontroler utama untuk project detektor gas.
Menampilkan status deteksi gas secara real-time.
Menghubungkan komponen di breadboard.
Menghubungkan komponen ke Arduino.
Mikrokontroler utama untuk project detektor gas.
Bandingkan harga di berbagai marketplace
Mendeteksi gas LPG, asap, dan hidrogen.
Bandingkan harga di berbagai marketplace
Menampilkan status deteksi gas secara real-time.
Bandingkan harga di berbagai marketplace
Indikator visual status (aman/bahaya).
Bandingkan harga di berbagai marketplace
Membatasi arus pada LED RGB.
Bandingkan harga di berbagai marketplace
Alarm suara jika terdeteksi gas berbahaya.
Bandingkan harga di berbagai marketplace
Untuk merangkai semua komponen tanpa solder.
Bandingkan harga di berbagai marketplace
Menghubungkan komponen di breadboard.
Bandingkan harga di berbagai marketplace
Menghubungkan komponen ke Arduino.
Bandingkan harga di berbagai marketplace
Untuk menghubungkan Arduino ke HP Android.
Bandingkan harga di berbagai marketplace
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
// Definisikan ukuran layar OLED
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#define MQ2_PIN A0 // Pin untuk sensor MQ-2
#define RED_PIN 9 // Pin untuk LED RGB (merah)
#define GREEN_PIN 10 // Pin untuk LED RGB (hijau)
#define BLUE_PIN 11 // Pin untuk LED RGB (biru)
#define BUZZER_PIN 8 // Pin untuk buzzer
void setup() {
Serial.begin(9600); // Mulai komunikasi serial
// Inisialisasi display OLED
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("Alokasi SSD1306 gagal"));
for(;;); // Loop selamanya jika OLED gagal
}
display.clearDisplay(); // Bersihkan layar
display.setTextSize(1); // Atur ukuran teks
display.setTextColor(SSD1306_WHITE); // Atur warna teks
display.setCursor(0,0); // Atur posisi kursor
display.println(F("Detektor Gas/Asap")); // Tampilkan teks awal dalam bahasa Indonesia
display.display(); // Perbarui layar
// Set pin LED RGB sebagai output
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
// Set pin buzzer sebagai output
pinMode(BUZZER_PIN, OUTPUT);
}
void loop() {
// Baca nilai dari sensor MQ-2
int sensorValue = analogRead(MQ2_PIN);
// Tentukan status berdasarkan nilai sensor (sesuaikan threshold jika perlu)
String status;
if (sensorValue < 200) {
setRGB(0, 255, 0); // Hijau untuk aman
status = "Aman";
noTone(BUZZER_PIN); // Matikan buzzer
} else if (sensorValue < 600) {
setRGB(255, 255, 0); // Kuning untuk peringatan
status = "Peringatan";
noTone(BUZZER_PIN); // Matikan buzzer
} else {
setRGB(255, 0, 0); // Merah untuk bahaya
status = "Bahaya";
tone(BUZZER_PIN, 1000); // Mainkan nada 1000Hz
delay(200); // Suara selama 200ms
noTone(BUZZER_PIN); // Hentikan nada
delay(200); // Jeda 200ms untuk alarm intermiten
}
// Cetak ke Monitor Serial
Serial.print("Nilai MQ-2: ");
Serial.print(sensorValue);
Serial.print(" | Status: ");
Serial.println(status);
// Perbarui tampilan OLED
display.clearDisplay();
display.setCursor(0,0);
display.print(F("Gas/Asap: "));
display.println(status);
display.print(F("Sensor: "));
display.println(sensorValue);
display.display();
delay(1000); // Perbarui setiap 1 detik
}
void setRGB(int red, int green, int blue) {
analogWrite(RED_PIN, red); // Tulis nilai PWM untuk merah
analogWrite(GREEN_PIN, green); // Tulis nilai PWM untuk hijau
analogWrite(BLUE_PIN, blue); // Tulis nilai PWM untuk biru
}
Siapkan Komponen
Siapkan Arduino Uno, sensor gas MQ-2, layar OLED 128x64 I2C, LED RGB, resistor 220Ω, buzzer, breadboard, kabel jumper male-to-male, kabel jumper male-to-female, dan kabel OTG USB C.
Hubungkan OLED ke Arduino
Sambungkan SDA OLED ke A4, SCL ke A5, VCC ke 5V, dan GND ke GND pada Arduino.
Hubungkan Sensor MQ-2
Sambungkan AOUT MQ-2 ke A0 Arduino, VCC ke 5V, dan GND ke GND.
Hubungkan LED RGB
Sambungkan kaki merah ke pin 9 (lewat resistor 220Ω), hijau ke pin 10, biru ke pin 11, dan kaki negatif ke GND.
Hubungkan Buzzer
Sambungkan positif buzzer ke pin 8 dan negatif ke GND.
Hubungkan Arduino ke HP
Gunakan kabel OTG untuk menghubungkan Arduino ke HP Android.
Install ArduinoDroid
Download dan install ArduinoDroid di HP Android kamu. https://arduinodroid.id.uptodown.com/android
Upload Kode ke Arduino
Tulis kode deteksi gas di ArduinoDroid, lalu upload ke Arduino melalui OTG.
Uji Detektor Gas
Nyalakan Arduino. Jika sensor mendeteksi gas/asap, OLED menampilkan 'Bahaya', LED merah dan buzzer aktif. Jika aman, OLED menampilkan 'Aman', LED hijau menyala.
Tips Lanjutan
Untuk project lebih kompleks, sebaiknya gunakan laptop agar proses debugging lebih mudah.
Selesai!
Project detektor gas siap digunakan. Like, komen, dan follow untuk tutorial lainnya!