Buka Senin - Jumat jam 08.30 s/d jam 16.30 , Sabtu Jam 8.30 s/d jam 13.00 , Minggu tutup
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Beranda » Blog » Cara Menggunakan LoRa dengan Arduino

Cara Menggunakan LoRa dengan Arduino

Diposting pada 29 January 2020 oleh farhan / Dilihat: 6.331 kali / Kategori:

 

LoRa merupakan singkatan dari Long Range, dimana module ini menggunakan frekuensi radio dengan jarak yang jauh dan konsumsi daya yang rendah. Terdapat frekuensi yang umum digunakan yaitu 433 MHz, 868Mhz dan 915MHz. Sementara untuk module LoRa ini bisa melakukan komunikasi sejauh 15-20Km dengan daya yang rendah. Nah teknologi ini cocok sekali digunakan untuk menunjang perangkat IoT anda.

Untuk menggunakan LoRa ini anda memerlukan 2 buah LoRa, 1 digunakan sebagai transmitter (pengirim) dan 1 lagi sebagai receiver (penerima). Hal yang perlu diperhatikan pada Lora adalah pemilihan antena yang tepat, dengan memilih antena yang sesuai dengan frekuensi modulenya. Antena ini sangat penting karena mempengaruhi jarak komunikasi.

Oke langsung saja kita coba untuk menggunakan LoRa ini dengan Arduino. Dana yang akan kita coba adalah untuk menyalakan LED dengan potensiometer dengan mengatur kecerahannya. Lora yang dipakai adalah Ra-02 Sx1278 dengan frekuensi 433MHz, selengkapnya alat dan bahan yang dibutuhkan sebagai berikut :

 

Rangkaian

Keterangan :

  • GND LoRa ke GND Arduino
  • 3.3V LoRa ke 3.3V Arduino
  • RESET LoRa ke pin 9 Arduino
  • DIO0 LoRa ke pin 2 Arduino
  • NSS LoRa ke pin 10 Arduino
  • MOSI LoRa ke pin 11 Arduino
  • MISO LoRa ke pin 12 Arduino
  • SCK LoRa ke pin 13 Arduino
  • Potensiometer ke pin A0

Keterangan  :

  • Untuk LoRa sama disini ada penambahan LED dan resistor ke pin 3 Arduino.

Selanjutnya silahkan buka Arduino IDE dan masukkan librarynya.

Program Transmitter

#include <SPI.h>
#include <LoRa.h> 
int pot = A0;

void setup() {
  Serial.begin(9600);
  pinMode(pot,INPUT);
  
  while (!Serial);  
  Serial.println("LoRa Sender");
  if (!LoRa.begin(433E6)) { // or 915E6, the MHz speed of yout module
    Serial.println("Starting LoRa failed!");
    while (1);
  }
}

void loop() {
  int val = map(analogRead(pot),0,1024,0,255);
  LoRa.beginPacket();  
  LoRa.print(val);
  LoRa.endPacket();
  delay(50);
}

 

Jika anda menggunakan jenis LoRa dengan frekuensi lain misalnya 915MHz, silahkan ganti pada kode program dari 433E6 ke 915E6 :

if (!LoRa.begin(433E6)) // 915E6

Program Receiver

#include <SPI.h>
#include <LoRa.h> 
int LED = 3;
String inString = "";    // string to hold input
int val = 0;

void setup() {
  Serial.begin(9600);
  pinMode(LED,OUTPUT);
  
  while (!Serial);
  Serial.println("LoRa Receiver");
  if (!LoRa.begin(433E6)) { // or 915E6
    Serial.println("Starting LoRa failed!");
    while (1);
  }
}

void loop() {
  
  // try to parse packet
  int packetSize = LoRa.parsePacket();
  if (packetSize) { 
    // read packet    
    while (LoRa.available())
    {
      int inChar = LoRa.read();
      inString += (char)inChar;
      val = inString.toInt();       
    }
    inString = "";     
    LoRa.packetRssi();    
  }
      
  Serial.println(val);  
  analogWrite(LED, val);
}

 

Upload program sesuai dengan rangakaian transmitter dan reaciever, hasilnya berikut ini :

Silahkan uji coba seberapa jauh jarak yang bisa dijangkau.

Terima kasih, semoga bermanfaat.

Bagikan ke

Cara Menggunakan LoRa dengan Arduino

Saat ini belum tersedia komentar.

Silahkan tulis komentar Anda

Cara Menggunakan LoRa dengan Arduino

Produk yang sangat tepat, pilihan bagus..!

Berhasil ditambahkan ke keranjang belanja
Lanjut Belanja
Checkout
Produk Quick Order

Pemesanan dapat langsung menghubungi kontak dibawah: