Prolog
Komunikasi Bluetooth di zaman sekarang, kita bisa melakukannya dengan mudah tanpa harus ribet memahami elektro terlalu jauh.Arduino Modul seperti HC 05 dan HC 06 sudah beredar di masyarakat elektro dengan cepat karena kemudahannya..
HC 05 didesain untuk melakukan komunikasi wireless lewat bluetooth dengan sinyal 2.4 GHz.
Menggunakan teknologi CMOS yang membuat penggunaan modul ini tidak menghabiskan banyak daya, alias hemat energi gan..
Menggunakan Bluetooth HC 05 untuk mengatur nyala LED.
Untuk mengawali pemahaman menggunakan Bluetooth Modul, kita bisa menggunakan Bluetooth untuk mengatur nyala LED, yaitu hidup dan mati..Komponen yang dibutuhkan :
- Smartphone with Android OS
- 1 x Arduino Uno atau Other types
- 1 x Breadboard
- 1 x Bluetooth HC 05
- 1 x LED
- 1 x Resistor 270 or 330 Ohm
- Jumper dan Connector
Rangkaiannya bisa kalian cek gambar berikut :
Untuk kode codingnya :
#include <SoftwareSerial.h>
SoftwareSerial EB(2, 3); // Rx = 2, Tx = 3
const int pinLED = 7; // Pin Kaki positif LED
int val; // Variable hasil dari bluetooth
setup() {
Serial.begin( 9600 ); // Deklarasi komunikasi serial 9600 bps
EB.begin( 9600 ); // Deklarasi komunikasi serial 9600 bps
pinMode( pinLED, OUTPUT ); // Setting pinLED
}
loop() {
if( EB.available() ){
val = EB.read(); // Membaca kiriman Bluetooth
Serial.println(" Bluetooth HC 0x Siap !"); // Mengirim pesan ke Serial Menu
if( val == '1' ) { // Apakah Nilai kiriman Bluetooth = 1 ?
digitalWrite( pinLED, HIGH ); // Hidupkan LED
Serial.println(" Led dinyalakan "); // Kirim pesan
}
else if( val == '0' ) // Apakah Nilai kiriman Bluetooth = 0 ?
digitalWrite( pinLED, LOW ); // Matikan LED
Serial.println(" Led dimatikan "); // Kirim pesan
}
}
delay( 100 ); // Tunggu 0.1 detik
}
Setelah itu kalian ketik dan upload kodenya ke Arduino dengan Arduino IDE.
Penjelasan Kode Arduino diatas..
Bagian 1 :
#include <SoftwareSerial.h>Kode diatas untuk menjadikan Digital Pin 2 sebagai Pin Rx dan Digital Pin 3 sebagai Pin Tx.
SoftwareSerial EB(2, 3); // Rx = 2, Tx = 3
Kita tulis "SoftwareSerial EB(2, 3); ", berarti kita mendeklarasikan sebuah komunikasi Bluetooth dengan nama " EB ".
Mengapa seperti itu ?
Kalian lihat rangkaian bluetooth kalian, Pin Rx Bluetooth terhubung dengan Digital Pin 3, dan Pin Tx Bluetooth terhubung dengan Digital Pin 2, maka dari itu kita menggunakan kode bagian 1 untuk menjadikan Digital Pin 2 sebagai Pin Rx dan Digital Pin 3 sebagai Pin Tx.Sehingga hubungannya menjadi :
Pin Rx Arduino ( Pin 2 ) < - - - > Pin Tx BluetoothIngat, perhatikan pemasangan pin Rx Tx diatas agan komunikasi bluetooth dengan Arduino dapat berjalan dengan semestinya..
Pin Tx Arduino ( Pin 3 ) < - - - > Pin Rx Bluetooth
Bagian 2 :
const int pinLED = 7 ;Kode diatas mendeklarasikan pinLED atau pin dari kaki positif LED yang terhubung oleh Digital Pin 7.
int val ;
Jika kamu merubah hubungan kaki positif LED dengan pin lain, misal menuju pin 12, maka rubah :
const int pinLED = 7 ; --> const int pinLED = 12 ;
kode "int val", berarti membuat variable untuk menampung nilai yang didapat dari bluetooth nantinya..
Bagian 3 :
setup() {Fungsi setup ini diisi fungsi yang sudah tertulis gunanya secara jelas..
Serial.begin( 9600 ); // Deklarasi komunikasi serial 9600 bps
EB.begin( 9600 ); // Deklarasi komunikasi serial 9600 bps
pinMode( pinLED, OUTPUT ); // Setting pinLED
}
Bagian 4 :
if( EB.available() ){tadi kita buat komunikasi dengan nama "EB", kemudian kita tulis "EB.available()" untuk menanya apakah bluetooth siap ?
val = EB.read(); // Membaca kiriman Bluetooth
Jika iya, maka kita masukkan nilai dari bluetooth "EB.read()" ke variable "val" dengan perintah tersebut..
Bagian 5 :
if( val == '1' ) { // Apakah Nilai kiriman Bluetooth = 1 ?Jika val sama dengan "1" alias bluetooth mengirim nilai "1", maka hidupkan LED, dan jika "0", matikan LED..
digitalWrite( pinLED, HIGH ); // Hidupkan LED
Serial.println(" Led dinyalakan "); // Kirim pesan
}
else if( val == '0' ) // Apakah Nilai kiriman Bluetooth = 0 ?
digitalWrite( pinLED, LOW ); // Matikan LED
Serial.println(" Led dimatikan "); // Kirim pesan
}
Setelah memahami kode tersebut, kita lanjut ke..
Bagaimana Menghubungkan Arduino dengan Smartphone ?
Step 1 : Mendeteksi Bluetooth HC 05
Pertama kalian masuk ke opsi Pengaturan -> Pilih Bluetooth HC 05 atau Pilih Bluetooth yang tidak terdeteksi lalu kalian klik.Masukkan password " 0000 " atau " 1234 ", atau Password umum atau default Bluetooth HC 05.
Untuk merubah password sendiri kalian cek Merubah Password Bluetooth HC 05..
Setelah itu agan nyalakan bluetooth Smartphone agan.
Step 2 : Download Aplikasi Bluetooth Controllernya..
Untuk aplikasinya bisa di download di Bluetooth Apk BasicSetelah itu kalian install dan buka aplikasinya..
Setelah Step 1, kalian klik Connect Bluetooth -> Pilih HC 05 -> Klik on untuk menghidupkan dan off untuk sebaliknya ..
Untuk mencoba membuat Aplikasi sendiri bisa cek web MIT : MIT Apk Inventor
Setelah Bluetooth dinyalakan Bluetooth HC 05 Tidak Muncul atau Tidak Terdeteksi ?
Untuk masalah tersebut, kalian cek Step 1 pada Opsi mengubungkan Arduino diatas..Apa Selanjutnya ?
Setelah itu kalian pasti sudah memahami bagaimana komunikasi bluetooth dengan Arduino, untuk ke depannya bisa cek : Panduan Mempelajari Arduino dan Membuat Mobil Remote dengan Bluetooth.Pembelian komponen bisa di cek toko kami, jika produknya belum tersedia, bisa chat atau contact kami ..
Referensi :
-
Note : Some link haven't linked yet.. We would fix it soon ..
Maa,,saya mau nanya lagi,,module bluetooth nya ketemu tp tidak bisa di konek kan ke hp itu kenapa ya mas
ReplyDeletebisakah komunikasi AT-MODE(AT-COMMAND) dari arduino ke Bluetooth HC05.
ReplyDeleteJadi maksudnya kirim Command dr atmega/arduino ke HC05 (tanpa Hyperterminal)? mohon bantuannya master
Saya sudah seperti itu tapi yang berfungsi ketika saya ketik AT, sedangkan ketika ketik AT+NAME dan seterusnya Ndak ada jawaban. Kenapa ya?
Deletecommandnya kurang lengkap kk, mungkin yg dimaksud AT+NAME?
ReplyDeletedan untuk mengesetnya AT+NAME=
Mohon pencerahan..bagaimana mengubah char yg dikirim bluetooth menjadi integer?thx..
ReplyDeleteJika bluetooth mati cara memperbaiki nya bagaimana ?
ReplyDelete