Daftar Isi:

Komunikasi Arduino LoRa Sederhana (lebih dari 5km): 9 Langkah
Komunikasi Arduino LoRa Sederhana (lebih dari 5km): 9 Langkah

Video: Komunikasi Arduino LoRa Sederhana (lebih dari 5km): 9 Langkah

Video: Komunikasi Arduino LoRa Sederhana (lebih dari 5km): 9 Langkah
Video: CARA MENGGUNAKAN MODUL LORA DENGAN ARDUINO IOT 2024, Juli
Anonim
Komunikasi Arduino LoRa Sederhana (lebih dari 5km)
Komunikasi Arduino LoRa Sederhana (lebih dari 5km)

Kami akan menguji E32-TTL-100 dengan perpustakaan saya. Ini adalah modul transceiver nirkabel, beroperasi pada 410441 MHz (atau 868MHz atau 915MHz) berdasarkan RFIC SX1278 asli dari SEMTECH, transmisi transparan tersedia, tingkat TTL. Modul ini mengadopsi teknologi spread spectrum LORA.

Perlengkapan

  • Arduino UNO
  • Perangkat LoRa e32

Opsional

  • Perisai Mischianti Arduino LoRa (Sumber terbuka)
  • Perisai Mischianti WeMos LoRa (Sumber terbuka)

Langkah 1: Spesifikasi Perangkat

Modul ini memiliki algoritma FEC Forward Error Correction, yang memastikan efisiensi pengkodean yang tinggi & kinerja koreksi yang baik. Dalam kasus gangguan tiba-tiba, itu dapat memperbaiki paket data yang terganggu secara otomatis, sehingga keandalan dan jangkauan transmisi ditingkatkan secara bersamaan. Namun tanpa FEC, paket-paket tanggal tersebut hanya dapat di-drop. Dan dengan enkripsi & dekripsi yang ketat, intersepsi data menjadi sia-sia. Fungsi kompresi data dapat mengurangi waktu transmisi & kemungkinan gangguan, sekaligus meningkatkan keandalan & efisiensi transmisi.

  • Ukuran modul: 21*36mm
  • Jenis antena: SMA-K (impedansi 50Ω)
  • Jarak transmisi: 3000m (maks)
  • Daya maksimum: 2dB (100mW)
  • Tarif udara: 2.4Kbps (6 tingkat opsional (0.3, 1.2, 2.4, 4.8, 9.6, 19.2kbps)
  • Panjang emisi: 512ByteReceive
  • panjang: 512Byte
  • Antarmuka Komunikasi: UART – 8N1, 8E1, 8O1,
  • Delapan jenis UART baud Rate, dari 1200 hingga 115200bps (Default: 9600)
  • Dukungan RSSI: Tidak (Pemrosesan cerdas bawaan)

Langkah 2: Jenis Transmisi

Tipe transmisi
Tipe transmisi

Transmisi transparanIni dapat dianggap seperti "mode Demo", secara default Anda dapat mengirim pesan ke semua perangkat dengan alamat dan saluran yang dikonfigurasikan sama.

Transmisi tetap

Jenis transmisi ini Anda dapat menentukan alamat dan saluran di mana Anda ingin mengirim pesan. Anda dapat mengirim pesan ke:

  • Perangkat yang ditentukan dengan Alamat Rendah, Alamat Tinggi dan Saluran yang telah ditentukan.
  • Siarkan pesan ke satu set perangkat saluran Mode normal Cukup kirim pesan.

Langkah 3: Mode Perangkat

Mode normalCukup kirim pesan.

Mode bangun dan mode hemat daya

Seperti yang Anda inginkan jika perangkat dalam mode Bangun dapat "membangunkan" satu atau lebih perangkat yang berada dalam mode hemat daya dengan komunikasi pembukaan.

Program/mode tidur

Dengan konfigurasi ini Anda dapat mengubah konfigurasi perangkat Anda.

Langkah 4: Perangkat Pengkabelan

Perangkat Pengkabelan
Perangkat Pengkabelan
Perangkat Pengkabelan
Perangkat Pengkabelan

Di sini skema koneksi perangkat, ini sepenuhnya terhubung, dengan manajemen izin pin M0 dan M1 untuk mengubah modalitas perangkat, sehingga Anda dapat beralih ke konfigurasi atau mode bangun dengan program, perpustakaan membantu Anda dalam semua ini operasi.

Langkah 5: Konfigurasi

Konfigurasi
Konfigurasi

Ada perintah yang ditentukan untuk mengatur dan mendapatkan konfigurasi

void setup() { Serial.begin(9600); penundaan (500); // Mulai semua pin dan UART e32ttl100.begin(); ResponseStructContainer c; c = e32ttl100.getConfiguration(); // Penting untuk mendapatkan pointer konfigurasi sebelum semua operasi lainnya Konfigurasi konfigurasi = *(Konfigurasi*) c.data; Serial.println(c.status.getResponseDescription()); Serial.println(c.status.code); printParameters(konfigurasi); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation(); // Penting untuk mendapatkan penunjuk informasi sebelum semua operasi lainnya ModuleInformation mi = *(ModuleInformation*)cMi.data; Serial.println(cMi.status.getResponseDescription()); Serial.println(cMi.status.code); printModuleInformation(mi); }

Langkah 6: Hasil Konfigurasi

Dan hasilnya menjadi

Mulai Sukses 1 ---------------------------------------- HEAD BIN: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (Default) SpeedUARTDataRate BIN: 11 -> 9600bps (default) SpeedAirDataRate BIN: 10 -> 2.4kbps (default) OptionTrans BIN: 0 - > Transmisi transparan (default) OptionPullup BIN: 1 -> TXD, RXD, AUX adalah push-pulls/pull-up OptionWakeup BIN: 0 -> 250ms (default) OptionFEC BIN: 1 -> Aktifkan Forward Error Correction Switch (Default) OptionPower BIN: 0 -> 20dBm (Default) ---------------------------------------- Sukses 1 ---------------------------------------- HEAD BIN: 11000011 195 C3 Model no.: 32 Versi: 44 Fitur: 14 ----------------------------------------

Langkah 7: Kirim Pesan

Mengirim pesan
Mengirim pesan

Berikut sketsa sederhana untuk mengirim pesan ke semua perangkat yang terhubung ke saluran

void loop() { // Jika sesuatu tersedia if (e32ttl100.available()>1) { // membaca pesan String ResponseContainer rc = e32ttl100.receiveMessage(); // Apakah ada yang salah cetak error if (rc.status.code!=1){ rc.status.getResponseDescription(); }else{ // Cetak data yang diterima Serial.println(rc.data); } } if (Serial.available()) { Masukan string = Serial.readString(); e32ttl100.sendMessage(masukan); } }

Langkah 8: Perisai untuk Arduino

Perisai untuk Arduino
Perisai untuk Arduino

Saya juga membuat shield untuk Arduino yang sangat berguna untuk prototyping.

Dan saya merilisnya sebagai proyek open source di sini

www.pcbway.com/project/shareproject/LoRa_E32_Series_device_Arduino_shield.html

Langkah 9: Perpustakaan

Perpustakaan
Perpustakaan

Repositori GitHub

Forum dukungan

Dokumentasi tambahan

Direkomendasikan: