Penjelasan Singkat
Pada kesempatan kali ini akan dijabarkan tentang penggunaan modul RF 433MHz sebagai alternatif pengganti bluetooth, maupun module NRF240+ yang sebelumnya pernah dibahas.
Penggunaan modul RF (Radio Frequency) menjadi alternatif lain yang lebih efisien dan murah untuk transmisi data.
Komunikasi nirkabel yaitu komunikasi yang dimana antara transceiver dan reciever tidak perlu kabel sebagai sarana komunikasinya.
Disini akan dijelaskan cara kerja dari module tersebut, menjabarkan beberapa fitur didalamnya serta membagikan beberapa contoh proyek Arduino yang dicoba, diterapkan, dan dikembangkan kedalam proyek Anda sendiri.
Specification Receiver
- Range untuk Frequency : 433.92 MHz
- Modulation : ASK
- Mempunyai 4 Pin : VCC, Data, NC, GND
- Tegangan masuk 5 Vdc
- Bandwidth : 2MHz
- Sensitivity: excel –100dBm (50Ω)
Specification Transmitter
- Frequency Range: 433.92MHz
- Mempunyai 3 Pin : Data, VCC, GND
- Tegangan masuk 3 – 12Vdc
- Working frequency: Eve 315MHz Or 433MHz
- Transmission power: 25mW (315MHz at 12V)
- Frequency error: +150kHz (max)
- Velocity : less than 10Kbps
Cara Kerja RF 433MHz
Inti dari modul transceiver yaitu resonator SAW (Surface acoustic wave) yang disetel untuk operasi frekuensi 433.xx MHz.
Hanya terdapat beberapa kompenen pasif serta switching transistor.
Ketika logika TINGGI diberikan pada input DATA, osilator akan menghasilkan output carrier wave RF konstan pada 433.xx MHz dan pada saat input DATA diberikan logika RENDAH, osilator berhenti.
Teknik ini dikenal sebagai Amplitude Shift Keying.
Sedangkan pada receiver terdiri dari sirkuit RF tuned dan beberapa OP Amps untuk memperkuat gelombang pembawa yang diterima dari pemancar.
Sinyal yang diperkuat ini selanjutnya diumpankan ke PLL (Phase Lock Loop) yang memungkinkan decoder untuk “mengunci” ke aliran bit digital yang memberikan output decode yang lebih baik dan kekebalan noise.
Dalam Amplitude Shift Keying amplitudo (yaitu level) dari gelombang pembawa (sinyal 433MHz) diubah sebagai respons terhadap sinyal data yang masuk.
Ini sangat mirip dengan teknik analog modulasi amplitudo seperti halnya pada radio AM. Kadang-kadang disebut penguncian amplitudo biner karena hanya ada dua level yang perlu diperhatikan.
Penguncian Amplitude Shift memiliki keuntungan karena sangat sederhana untuk diterapkan. Cukup mudah untuk mendesain sirkuit dekoder.
ASK juga membutuhkan bandwidth yang lebih sedikit daripada teknik modulasi lainnya seperti FSK (Frequency Shift Keying).
Inilah yang meruapakan salah satu alasan module ini menjadi murah.
Kerugiannya adalah ASK rentan terhadap gangguan dari perangkat radio lain dan kebisingan latar belakang.
Tutorial komunikasi 2 arduino Uno dengan penampil LCD 16×2
Bahan yang diperlukan antara lain :
- Arduino Uno 2 pcs
- Module RF 433Mhz (Tx dan Rx)
- Kabel jumper
- Komputer atau laptop
- LCD Nokia 5110
- Software Arduino IDE
Rangkaian untuk kedua arduino
Penggunaan library dalam Arduino IDE untuk project ini :
- Library yang dibutuhkan yaitu virtualwire [ddownload id=”2085″] , Adafruit_GFX [ddownload id=”1055″], dan Adafruit_PCD8544 [ddownload id=”1056″]
- File diatas diundu dahulu
- Unzip library tersebut dan taruh kedalam folder program file arduino/library
Program untuk transceiver
#include <VirtualWire.h> String message; void setup() { Serial.begin(9600); // Define Arduino pin 12 as // the transmitter data pin vw_set_tx_pin(12); vw_setup(2000); // Bits per sec Serial.println("Enter the text and click SEND ..."); } void loop() { char data[40]; int number; if (Serial.available() > 0) { number = Serial.readBytesUntil (13,data,40); data[number] = 0; Serial.print("Sent : "); Serial.print(data); Serial.print(" - Caracteres : "); Serial.println(strlen(data)); // Send the message to the routine that // transmits the data via RF send(data); } } void send (char *message) { vw_send((uint8_t *)message, strlen(message)); vw_wait_tx(); // Waiting for data to be sent }
Program pertama untuk receiver
[lockercat]
#include <Adafruit_GFX.h> // Load the library of the display #include <Adafruit_PCD8544.h> // Load the graphics library #include <VirtualWire.h> byte message[VW_MAX_MESSAGE_LEN]; // Store incoming messages byte msgLength = VW_MAX_MESSAGE_LEN; // Stores message size // Pin to LCD : // pin 8 - Serial clock out (SCLK) // pin 9 - Serial data out (DIN) // pin 10 - Data/Command select (D/C) // pin 11 - LCD chip select (CS/CE) // pin 12 - LCD reset (RST) Adafruit_PCD8544 display = Adafruit_PCD8544(8, 9, 10, 11, 12); // Initialize and set display parameters void setup() { Serial.begin(9600); vw_set_rx_pin(5); // Set Arduino pin 5 as input // data receiver vw_setup(2000); // Bits por segundo vw_rx_start(); // Inicializa o receptor display.begin(); display.setContrast(50); // Adjust the display contrast display.clearDisplay(); // Clears the buffer and display display.setTextSize(1); // Arrow the size of the text display.setTextColor(BLACK); // Arrow the text color display.setCursor(00,00); // Arrow cursor position display.print("Waiting ..."); display.display(); delay(2000); } void loop() { uint8_t message[VW_MAX_MESSAGE_LEN]; uint8_t msgLength = VW_MAX_MESSAGE_LEN; display.setCursor(00, 00); // Arrow cursor position if (vw_get_message(message, &msgLength)) // Non-blocking { Serial.print("Received: "); display.clearDisplay(); // Clears the buffer and display for (int i = 00; i < msgLength; i++) { Serial.write(message[i]); display.write(message[i]); display.display(); } Serial.println(); } }
[/lockercat]
Langkah – langkah simulasi modul RF 433MHz :
- Arduino Uno 1st yang dihubungkan dengan RF jenis TX harus tetap dihubungkan dengan komputer dan dibuka “Serial Monitor”
- Arduino Uno 2nd yang dihubungkan dengan RF jenis RX dan terdapat LCD Nokia harus mempunyai sumber tegangan sendiri bisa berasal dari adapator misalnya
- Setting serial Monitor pada baut komunikasi 9600
- Kemudian ketik kata karakter misal “ARDUINO” di serial monitor dan tekan Enter
- Dan kroscek pada LCD nokia apakah sudah tertampil tulisan “ARDUINO”
Hasil dari program diatas seperti gambar dibawah ini
Program receivernya yg mana ya? Kok ga ada
Klik saja konten nya yang terkunci itu gan,