Hello Sahabat Anak Kendali,
Kali ini saya akan membuat tutorial project Smart Home dengan Bluetooth HC-05, pada kesempatan kali ini, saya mencoba mengakses Bluetooth Arduino menggunakan SoftwareSerial, Software Serial berfungsi untuk menambah pin TX RX (Pin Serial ) pada Arduino kita, karena Arduino Nano, Uno, Promini, hanya memiliki satu buah pin TX RX, untuk itu sebagai pembantunya kita dapat menggunakan library SoftwareSerial, dimana rangkaian yang saya buat terdapat :
5 buah Relay
1 Arduino Nano
1 Module Bluetooth HC-05
dan beberapa komponen kecil lainya
gambar diatas adalah PCB Board yang saya buat dengan aplikasi EAGLE jika ingin belajar mendesign routing PCB silahkan baca Rangkaian Relay Arduino Multichanel
selanjutnya jika sahabat ingin melihat rangkaian pada gambar diatas silahkan lihat
baiklah langsung saja ini adalah program Arduino yang saya buat, silahkan copy dengan gratis 🙂
#include <SoftwareSerial.h>
#define relay1 8
#define relay2 9
#define relay3 10
#define relay4 11
#define relay5 12
SoftwareSerial kendali(3, 2); // RX | TX
char i;
String (kata);
void setup() {
kendali.begin(9600);
Serial.begin(9600);
pinMode(relay1, OUTPUT);
pinMode(relay2, OUTPUT);
pinMode(relay3, OUTPUT);
pinMode(relay4, OUTPUT);
pinMode(relay5, OUTPUT);
}
void mati_semua(){
digitalWrite(relay1, 0);
digitalWrite(relay2, 0);
digitalWrite(relay3, 0);
digitalWrite(relay4, 0);
digitalWrite(relay5, 0);
}
void nyala_semua(){
digitalWrite(relay1, 1);
digitalWrite(relay2, 1);
digitalWrite(relay3, 1);
digitalWrite(relay4, 1);
digitalWrite(relay5, 1);
}
void loop() {
while (kendali.available() > 0) {
delay(10);
i = kendali.read(); // isi variabel i dengan nilai integer yang diterima melalui serial bluetooth
kata+=i;
}
if (kata.length()>0){
Serial.println(kata);
if (kata == “lampu kamar nyala”){
digitalWrite(relay1, 1);
}
else if (kata == “lampu kamar mati”){
digitalWrite(relay1, 0);;
}
else if (kata == “lampu kamar nyala”){
digitalWrite(relay1, 1);
}
else if (kata == “lampu kamar mati”){
digitalWrite(relay1, 0);;
}
else if (kata == “buka pintu”){
digitalWrite(relay2, 1);
}
else if (kata == “kunci pintu”){
digitalWrite(relay2, 0);;
}
else if (kata == “Kipas nyala”){
digitalWrite(relay3, 1);
}
else if (kata == “kipas mati”){
digitalWrite(relay3, 0);;
}
else if (kata == “salon nyala”){
digitalWrite(relay4, 1);
}
else if (kata == “salon mati”){
digitalWrite(relay4, 0);;
}
if(kata == “semua mati”){
mati_semua();
}
if(kata == “semua nyala”){
nyala_semua();
}
kata=””;
}
}
mungkin cukup sekian artikel kali ini, kurang lebihnya mohon maaf, silahkan beri masukan, kritik, saran atau pertanyaan di kolom komentar !
Maaf mau tanya mas saya menggunakan bluetooth hc 06 kok RX TX harus di balik ya baru bisa berfungsi?, terus ada dua pin yg tidak bisa di matikan jadi hanya bisa nyala saja kira2 apa masalahya ya?
Mau tanya lagi mas kalo mau upload sketch apa harus upload juga library bluetoothnya,,soalnya tadi saya coba upload sketch langsung tanpa download library bluetooth HC06 dan program berhasil d upload
tergantung mas, kalo mas pake komunikasi serial langsung ke pin tx rx arduino ga perlu library, tapi kalo make pin digital perlu library mas biar pin digital jadi pin serial
iya mas harus dibalik komenukiasi serial tx rx nya, pin state dan EN biasanya tidak digunakan mas,
kalo saya pake HC-05 ga pernah dapet masalah mas
Ok mas makasih infonya, oh iya mas skema untuk rangkaian pcb di atas ada gak sama komponen kecilnya apa saja pengen buat biar simple rangkaiannya
ini mas, bisa di download di artike ini https://www.anakkendali.com/2018/02/rangkaian-relay-arduino-multichanel.html
Nama aplikasi di android untuk voic nya apa ya mas.?
banyak gan,, semuanya work kok, kata kuncinya, voice arduino, atau voice bluetoth, di playstore
Nama aplikasi di android untuk voic nya apa ya mas.?
Kalau pake serial radio,
Sketnya gimana ya om??
Saya punya arduino uno,HC-05.klau dibuat jd joystik bisa gak gan pakai aplikasi android..
bisa pake banget bang 🙂