Isi kandungan:

Komunikasi ArRinoino LoRa Ringkas (Lebih Dari 5km): 9 Langkah
Komunikasi ArRinoino LoRa Ringkas (Lebih Dari 5km): 9 Langkah

Video: Komunikasi ArRinoino LoRa Ringkas (Lebih Dari 5km): 9 Langkah

Video: Komunikasi ArRinoino LoRa Ringkas (Lebih Dari 5km): 9 Langkah
Video: CARA MENGGUNAKAN MODUL LORA DENGAN ARDUINO IOT 2024, Julai
Anonim
Komunikasi Arduino LoRa Mudah (lebih dari 5km)
Komunikasi Arduino LoRa Mudah (lebih dari 5km)

Kami akan menguji E32-TTL-100 dengan perpustakaan saya. Ia adalah modul transceiver tanpa wayar, beroperasi pada 410 441 MHz (atau 868MHz atau 915MHz) berdasarkan RFIC SX1278 asli dari SEMTECH, transmisi telus tersedia, tahap TTL. Modul ini menggunakan teknologi spektrum penyebaran LORA.

Bekalan

  • Arduino UNO
  • Peranti LoRa e32

Pilihan

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

Langkah 1: Spesifikasi Peranti

Modul ini mempunyai algoritma FEC Forward Error Correction, yang memastikan kecekapan pengekodan yang tinggi & prestasi pembetulan yang baik. Sekiranya berlaku gangguan secara tiba-tiba, ia dapat membetulkan paket data yang terganggu secara automatik, sehingga kebolehpercayaan dan jangkauan penghantaran ditingkatkan sesuai. Tetapi tanpa FEC, paket da te itu hanya dapat dijatuhkan. Dan dengan penyulitan & penyahsulitan yang ketat, pemintasan data menjadi sia-sia. Fungsi pemampatan data dapat menurunkan waktu penghantaran & kebarangkalian gangguan, sambil meningkatkan kebolehpercayaan & kecekapan transmisi.

  • Saiz modul: 21 * 36mm
  • Jenis antena: SMA-K (impedans 50Ω)
  • Jarak penghantaran: 3000m (maksimum)
  • Kuasa maksimum: 2dB (100mW)
  • Kadar udara: 2.4Kbps (6 tahap pilihan (0.3, 1.2, 2.4, 4.8, 9.6, 19.2kbps)
  • Panjang pelepasan: 512ByteReceive
  • panjang: 512Bait
  • Antara Muka Komunikasi: UART - 8N1, 8E1, 8O1,
  • Lapan jenis Kadar baud UART, dari 1200 hingga 115200bps (Lalai: 9600)
  • Sokongan RSSI: Tidak (Pemprosesan pintar terbina dalam)

Langkah 2: Jenis Penghantaran

Jenis Penghantaran
Jenis Penghantaran

Transparan transmisi Ini dapat dianggap seperti "Demo mode", secara lalai anda dapat mengirim pesan ke semua perangkat dengan alamat dan saluran yang dikonfigurasi sama.

Memperbaiki penghantaran

Jenis transmisi ini dapat anda tentukan alamat dan saluran di mana anda mahu menghantar mesej. Anda boleh menghantar mesej ke:

  • Peranti yang ditentukan dengan Alamat Rendah, Alamat Tinggi dan Saluran yang telah ditentukan.
  • Siarkan mesej ke satu set peranti saluran Mod biasa Cukup hantar mesej.

Langkah 3: Mod Peranti

Mod biasa Hantar mesej dengan mudah.

Mod bangun dan mod penjimatan kuasa

Seperti yang dapat Anda maksudkan jika suatu perangkat berada dalam mode Bangun dapat "bangun" satu atau lebih peranti yang berada dalam mod hemat daya dengan komunikasi mukadimah.

Mod program / tidur

Dengan konfigurasi ini, anda boleh mengubah konfigurasi peranti anda.

Langkah 4: Peranti Pendawaian

Peranti Pendawaian
Peranti Pendawaian
Peranti Pendawaian
Peranti Pendawaian

Di sini skema sambungan peranti, ini adalah sambungan sepenuhnya, dengan pengurusan permit pin M0 dan M1 untuk mengubah modaliti peranti, jadi anda boleh beralih ke mod konfigurasi atau bangun dengan program, perpustakaan membantu anda dalam semua ini operasi.

Langkah 5: Konfigurasi

Konfigurasi
Konfigurasi

Ada arahan yang ditentukan untuk menetapkan dan mendapatkan konfigurasi

batal persediaan () {Serial.begin (9600); kelewatan (500); // Mulakan semua pin dan UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // Penting untuk mendapatkan penunjuk konfigurasi sebelum semua operasi lain 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 maklumat penunjuk sebelum semua operasi lain ModulInformasi mi = * (ModulInformasi *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (mi); }

Langkah 6: Hasil Konfigurasi

Dan hasilnya menjadi

Mulakan Kejayaan 1 ---------------------------------------- HEAD BIN: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> SpeedParity 433MHzBit BIN: 0 -> 8N1 (Default) SpeedUARTDataRate BIN: 11 -> 9600bps (default) SpeedAirDataRate BIN: 10 -> 2.4kbps (lalai) OptionTrans BIN: 0 - > Transparan transmisi (lalai) OptionPullup BIN: 1 -> TXD, RXD, AUX adalah push-pull / pull-ups OptionWakeup BIN: 0 -> 250ms (default) OptionFEC BIN: 1 -> Hidupkan Suis Pembetulan Kesalahan Hadapan (Lalai) OptionPower BIN: 0 -> 20dBm (Lalai) ---------------------------------------- Kejayaan 1 ---------------------------------------- KETUA BIN: 11000011 195 C3 Model no.: 32 Versi: 44 Ciri: 14 ----------------------------------------

Langkah 7: Hantar Mesej

Menghantar mesej
Menghantar mesej

Berikut adalah lakaran mudah untuk menghantar mesej ke semua peranti yang dilampirkan ke saluran

gelung void () {// Sekiranya ada yang tersedia jika (e32ttl100.available ()> 1) {// baca mesej String ResponseContainer rc = e32ttl100.receiveMessage (); // Adakah terdapat kesilapan cetak yang salah sekiranya (rc.status.code! = 1) {rc.status.getResponseDescription (); } lain {// Cetak data yang diterima Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (input); }}

Langkah 8: Perisai untuk Arduino

Perisai untuk Arduino
Perisai untuk Arduino

Saya membuat juga perisai untuk Arduino yang menjadi sangat berguna untuk membuat prototaip.

Dan saya mengeluarkannya sebagai projek sumber terbuka di sini

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

Langkah 9: Perpustakaan

Perpustakaan
Perpustakaan

Repositori GitHub

Forum sokongan

Dokumentasi tambahan

Disyorkan: