Sunday, December 2, 2018

kirim data sensor secara wireless dengan module RF 433MHz

Pendahuluan

Jika kita mempunyai sebuah project dimana terdapat sebuah sensor misal sensor IR di posisi tertentu dan ingin mengambil datanya, maka kita akan menghubungkan sensor IR tersebut dengan kabel ke sebuah kontroller yang kita gunakan, katakanlah Arduino Uno.

Lalu  bagaimana jika kita menggunakan module RF 433MHz untuk mengirimkan data sensor IR tersebut ke Arduino Uno tanpa kabel alias wireless. bagaimana caranya ? baik langsung saja kita mulai step by step.

Module RF 433MHz

Merupakan modul RF yang murah dengan kemampuan yang saya pikir diluar harganya yang murah, kita bisa kirim data secara wireless dengan jangkauan yang cukup jauh. modul ini terdiri dari dua perangkat yaitu Receiver atau Penerima dan Transmiter atau Pemancar, pada bagian Transmiter terdapat 3 Pin yaitu VCC, GND dan Data, dan bagian Receiver terdapat 4 Pin, Vcc, GND, dan dua Pin Data. cukup sederhana bukan.

cara kerja dari module RF ini secara singkat yaitu mengirimkan data sesuai dengan data yang ada di bagian pemancar / transmiter. jika kita kirim data '1' maka di sisi receiver akan menerima data '1' dan sebaliknya. secara teknik module RF ini mengunakan modulasi ASK atau Amplitudo Shift Keying.

Skematik

kita mulai dengan skematik Sensor IR terhubung ke bagian pemancar. kita cukup hubungkan bagian sinyal sensor ke bagian Data Module RF 433MHz dan VCC dan GND pada pemancar dan sensor di berikan VCC dan GND. perhatikan gambar berikut ini :



sekarang kita gunakan Arduino Uno sebagai penerima data sensor secara wireless, kita hubungkan bagian penerima modul 433MHz ke Pin yang kita gunakan sebagai input. katakanlah Pin 12. seperti rangkaian dibawah ini :

dapat diperhatikan diatas sinyal di hubungkan ke PIN 12 sehingga nantinya kita akan memprogram Arduino untuk menerima INputan di PIn 1.

Source Code Arduino

untuk program Arduino Uno, kita gunakan PIN 12 sebagai Input dan disetting Pull Up, artinya jika input dari sensor impedansi Tinggi maka input akan HIGH secara singkat tanpa input default yang dibaca akan HIGH. 

program akan membaca Pin 12 dan jika LOW maka LED akan menyala, disini saya menggunakan Aktif High untuk LED dan sensor jika ada halangan akan mengirimkan logika LOW. artinya jika ada halangan maka LED akan menyala.

sebaliknya jika input HIGH atau tidak ada Halangan makan LED akan Off atau Padam. untuk lebih jelasnya dapat dilihat Source Code berikut ini :



void setup() {
  pinMode(12, INPUT_PULLUP);
  pinMode(13, OUTPUT);

}

void loop() {
  int sensorVal = digitalRead(12);

  if (sensorVal == HIGH) {
    digitalWrite(13, LOW);
  } else {
    digitalWrite(13, HIGH);
  }
}

teman-teman upload kode diatas di Arduino dan Test. jika ada pertanyaan bisa isi komentar dibawah ini. semoga bermanfaat dan Terima Kasih