Project Bluetooth Light : Kontrol Relay Menggunakan Arduino dan Bluetooth HC-05
1. Judul Proyek:
Kontrol Relay Menggunakan Arduino dan Bluetooth HC-05
2. Tujuan Proyek:
Proyek ini bertujuan untuk mengontrol relay menggunakan
komunikasi Bluetooth. Relay akan dikendalikan dengan perintah yang dikirim dari
smartphone melalui modul Bluetooth HC-05, di mana perintah '1' akan
menyalakan relay, dan perintah '0' akan mematikan relay.
3. Alat dan Bahan:
- Arduino
Uno atau sejenisnya.
- Modul
Bluetooth HC-05.
- Relay
5V.
- Smartphone
dengan aplikasi Bluetooth (misalnya Bluetooth Terminal).
- Kabel
jumper.
- Power
supply untuk relay (jika diperlukan).
4. Skema Koneksi:
- Modul
Bluetooth HC-05:
- VCC
ke 5V Arduino.
- GND
ke GND Arduino.
- TX
ke Pin 10 Arduino (karena menggunakan SoftwareSerial).
- RX
ke Pin 11 Arduino (dengan pembagi tegangan untuk menurunkan
tegangan ke 3.3V).
- Relay:
- VCC
ke 5V Arduino.
- GND
ke GND Arduino.
- IN
(kontrol relay) ke Pin 7 Arduino.
- COM
ke Lampu
- NO
ke Steker
- Steker
:
- 1 Kabel ke Lampu
6. Kode Program:
#include <SoftwareSerial.h> // library untuk komunikasi Bluetooth // Membuat komunikasi serial untuk modul Bluetooth SoftwareSerial BTSerial(10, 11); // RX, TX (pin Arduino) int relayPin = 7; // Pin untuk mengontrol relay void setup() { // Mengatur pin relay sebagai output pinMode(relayPin, OUTPUT); digitalWrite(relayPin, 1); // Mulai dengan relay mati (karena relay active-low, jadi dibalik LOW jadi 1) // Memulai komunikasi serial Serial.begin(9600); // Serial Monitor BTSerial.begin(9600); // Baud rate komunikasi Bluetooth Serial.println("Bluetooth siap. Menunggu perintah..."); } void loop() { // Cek apakah ada data dari Bluetooth if (BTSerial.available()) { char command = BTSerial.read(); // Membaca perintah dari Bluetooth // Debug: cetak perintah yang diterima Serial.println(command); // Jika perintah '1', nyalakan relay if (command == '1') { digitalWrite(relayPin, 0); // Relay ON (0=HIGH) Serial.println("Relay ONx"); } // Jika perintah '0', matikan relay else if (command == '0') { digitalWrite(relayPin, 1); // Relay OFF (1=LOW) Serial.println("Relay OFF"); } } }
7. Penjelasan Kode:
- Library
Bluetooth (SoftwareSerial) digunakan untuk menciptakan port serial
tambahan di Arduino pada pin 10 dan 11, sehingga komunikasi dengan modul HC-05
dapat dilakukan.
- Pin 7 pada Arduino diatur sebagai pin untuk mengontrol relay.
- Pada fungsi setup(), pin relay diatur
sebagai output, dan relay dimatikan pada awal (karena relay bekerja
dengan logika active-low, yaitu relay menyala saat pin diatur ke LOW
dan mati saat pin diatur ke HIGH).
- Serial
Monitor digunakan untuk debugging dan memastikan data perintah
diterima dengan benar.
- Pada
fungsi loop(), perintah yang dikirim dari Bluetooth (melalui aplikasi pada
smartphone) dibaca. Jika perintah yang diterima adalah '1', relay
dinyalakan dengan mengatur pin kontrol relay ke LOW (karena relay
aktif rendah). Jika perintah '0', relay dimatikan dengan mengatur pin
kontrol relay ke HIGH.
8. Logika Relay Active-Low:
Banyak relay bekerja dengan logika active-low,
artinya:
- Relay
menyala ketika pin kontrol diatur ke LOW.
- Relay
mati ketika pin kontrol diatur ke HIGH.
Dalam kode ini, digitalWrite(relayPin, 0) menyalakan relay,
dan digitalWrite(relayPin, 1) mematikannya, sesuai dengan logika active-low.
9. Cara Pengujian:
- Pasangkan
modul Bluetooth HC-05 dengan smartphone menggunakan pengaturan
Bluetooth (biasanya, kode PIN default adalah "1234" atau
"0000").
- Gunakan
aplikasi Bluetooth Terminal untuk mengirim perintah:
- Kirim
'1' untuk menyalakan relay.
- Kirim '0' untuk mematikan relay.
- Periksa apakah relay berfungsi sesuai dengan perintah yang dikirim dari smartphone.
10. Kesimpulan:
Dengan proyek ini, relay dapat dikontrol melalui perintah
Bluetooth yang dikirim dari smartphone. Relay bekerja dengan logika active-low,
sehingga Arduino harus mengatur pin kontrol relay ke LOW untuk
menyalakannya dan HIGH untuk mematikannya. Program ini memungkinkan
kontrol jarak jauh perangkat yang terhubung ke relay, seperti lampu atau
perangkat elektronik lainnya.



