Modul LoRa atau LoRaWan
Modul LoRa adalah alat dengan wireless frequency atau radio frekuensi dengan jarak tempuh yang jauh dengan menggunakan power konsumsi yang rendah. Dengan modul LoRa ini kita bisa mengontrol dan memonitoring suatu dengan radio frekuensi. Seperti monitoring Aktifias gunung, Drone, Monitoring listrik, pertanian dan lain lain.
Dengan Memanfaat device LoRa ini kita bisa menghubungkan banyak sensor untuk di monitoring dengan hanya berbekal baterai. Dan mampu hidup beberapa tahun.
Modul LoRa Custome
Karena kita di mikroavr penasaran dengan LoRa ini, kita coba desain lora custome dengan spesifikasi sebagai berikut
- Mengguakan LoRa sX1276 915Mhz
- Tiga Output Relay
- Tiga input 12/24 volt
- i2c output
- Chip Program atmega328 dengan Core arduino uno
- regulator dengan LM2596 +5v dengan input voltage 12-35volt
Modul Lora di atas sudah di lengkapi dengan antenna on board. Jadi lebih mudah untuk di gunakan dalam pemilihan antenna nya.
Untuk hasil pcb ya sebegai berikut
Pengujian Modul LoRa
Untuk menguji modul di atas, apakah bekerja atau tidak. caranya cukup mudah, namun harus menggunakan dua modul. Satu modul digunakan sebagai pengirim, dan satu nya lagi kita gunakan sebagai penerima.
Hal pertama yang kita perlukan adalah library dari Lora ini. teman-teman bisa download di link berikut ini
https://github.com/sandeepmistry/arduino-LoRa
Seperti biasa, add di library arduino ide teman-teman kemudian yuk kita buat program example nya. PROGRAM ini sudah ada di example, tapi teman bisa copy paste program di bawah ini
Program pengirim
#include <SPI.h> #include <LoRa.h> int counter = 0; void setup() { Serial.begin(9600); while (!Serial); Serial.println("LoRa Sender"); if (!LoRa.begin(915E6)) { Serial.println("Starting LoRa failed!"); while (1); } } void loop() { Serial.print("Sending packet: "); Serial.println(counter); // send packet LoRa.beginPacket(); LoRa.print("hello "); LoRa.print(counter); LoRa.endPacket(); counter++; delay(5000); }
Program Penerima
#include <SPI.h> #include <LoRa.h> void setup() { Serial.begin(9600); while (!Serial); Serial.println("LoRa Receiver"); if (!LoRa.begin(915E6)) { Serial.println("Starting LoRa failed!"); while (1); } } void loop() { // try to parse packet int packetSize = LoRa.parsePacket(); if (packetSize) { // received a packet Serial.print("Received packet '"); // read packet while (LoRa.available()) { Serial.print((char)LoRa.read()); } // print RSSI of packet Serial.print("' with RSSI "); Serial.println(LoRa.packetRssi()); } }
Setelah itu, coba teman teman jalan kan ke dua program di atas, perhatikan program pada pengirim. dan perhatikan program pada penerima, apa yang dikirim oleh modul pengirim akan di tangkap oleh modul penerima.
Hal-Hal penting pada Modul LoRa
Ada beberapa hal penting yang harus di perhatikan jika teman-temen ingin menggunakan Lora
- Antenna, pemilihan antenna yang tepat dan sesuai dengan frequency LoRa yang kita gunakan akan mempengaruhi jarak tembus dari lora itu sendiri. Seteah diskusi dengan teman dosen di PENS dia bisa buat antenna custome dengan jarak tempuh 10-14km dengan lora 100mw, atau lora yang kita gunaan di atas, untuk antenna stik yang di gunakan di modul di atas, tembus sekitar 600-700m sesuai konfirmasi dari yang beli modul nya
- Program dan frequency hendak nya sama. di program di atas menggunakan 915, tapi jika teman-teman menggunakan lora dengan frekuency 433mhz maka sesuai dengan program nya
- LoRa tidak toleransi terhadap 5v volt, hanya 3.3volt. khusus nya untuk lora jenis sx1278 dan sx1276. Artinya jika kita menggunaan arduino dengan supply +5v di hubungkan langsung dengan lora, maka tidak akan bekerja. Harus menggunakan level shifter 5v to 3,3volt. atau cara terbaik adalah input 3.3 volt di pin +5v arduino anda. bisa menggunakan modul lm2596 yang tentu nya sudah di adjust tegangan output nya 3.3volt
- Gunakan frekuency yang telah di regulasi oleh pemerintah, agar tidak mengganggu perangkat komunikasi yang lain
Semoga tulisan di atas bermanfaat
thanks