Mundarija:

Oddiy Arduino LoRa aloqasi (5 km dan ortiq): 9 qadam
Oddiy Arduino LoRa aloqasi (5 km dan ortiq): 9 qadam

Video: Oddiy Arduino LoRa aloqasi (5 km dan ortiq): 9 qadam

Video: Oddiy Arduino LoRa aloqasi (5 km dan ortiq): 9 qadam
Video: Как построить сеть LoRa с ES8266 || Облако Интернета вещей RemoteXY 2024, Iyul
Anonim
Oddiy Arduino LoRa aloqasi (5 km dan ortiq)
Oddiy Arduino LoRa aloqasi (5 km dan ortiq)

Biz kutubxonam bilan E32-TTL-100 ni sinovdan o'tkazmoqchimiz. Bu simsiz qabul qiluvchi modul bo'lib, SEMTECH -dan original RFIC SX1278 asosida 410 441 MGts (yoki 868 MGts yoki 915 MGts) da ishlaydi, shaffof uzatish mavjud, TTL darajasi. Modul LORA spektrli spektr texnologiyasini qabul qiladi.

Ta'minotlar

  • Arduino UNO
  • LoRa e32 qurilmalari

Majburiy emas

  • Mischianti Arduino LoRa qalqoni (ochiq manba)
  • Mischianti WeMos LoRa qalqoni (ochiq manba)

1 -qadam: qurilmalarning texnik xususiyatlari

Modulda FEC Forward Error Correction algoritmi mavjud bo'lib, u yuqori kodlash samaradorligini va yaxshi tuzatish ishini ta'minlaydi. To'satdan shovqin bo'lsa, u avtomatik ravishda aralashgan ma'lumotlar paketlarini to'g'rilaydi, shuning uchun ishonchliligi va uzatish diapazoni mos ravishda yaxshilanadi. Ammo FEC bo'lmasa, bu paketlar faqat tashlanishi mumkin. Qattiq shifrlash va shifrni ochish bilan ma'lumotlarni uzib qo'yish befoyda bo'ladi. Ma'lumotni siqish funktsiyasi uzatish vaqtini va shovqin ehtimolini kamaytiradi, shu bilan birga ishonchliligi va uzatish samaradorligini oshiradi.

  • Modul hajmi: 21*36 mm
  • Antenna turi: SMA-K (50Ω impedans)
  • Etkazish masofasi: 3000m (maksimal)
  • Maksimal quvvat: 2 dB (100 mVt)
  • Havo tezligi: 2,4 Kbit / s (6 ta ixtiyoriy daraja (0,3, 1,2, 2,4, 4,8, 9,6, 19,2 kbit / s)
  • Chiqish uzunligi: 512ByteReceive
  • uzunligi: 512 bayt
  • Aloqa interfeysi: UART - 8N1, 8E1, 8O1,
  • UART baud tezligining sakkiz turi, 1200 dan 115200 soniyagacha (standart: 9600)
  • RSSI-ni qo'llab-quvvatlash: Yo'q (o'rnatilgan aqlli ishlov berish)

2 -qadam: uzatish turi

Etkazish turi
Etkazish turi

Shaffof uzatish "Demo rejimi" deb hisoblanishi mumkin, sukut bo'yicha siz bir xil konfiguratsiyalangan manzili va kanalidagi barcha qurilmalarga xabar yuborishingiz mumkin.

Ruxsat etilgan uzatish

Ushbu turdagi uzatish, siz xabar yuborishni xohlagan manzil va kanalni belgilashingiz mumkin. Siz xabarni quyidagi manzilga yuborishingiz mumkin:

  • Oldindan belgilangan manzil past, manzili yuqori va kanalli ko'rsatilgan qurilma.
  • Xabarni bir nechta kanalli qurilmalarga uzatish Oddiy rejim Xabarni yuborish kifoya.

3 -qadam: Qurilma rejimi

Oddiy rejim Xabar yuborish.

Uyg'onish rejimi va quvvatni tejash rejimi

Siz xohlaganingizdek, agar qurilma uyg'onish rejimida bo'lsa, energiya tejash rejimida bo'lgan bir yoki bir nechta qurilmani oldingi aloqa bilan "uyg'otishi" mumkin.

Dastur/uyqu rejimi

Ushbu konfiguratsiya yordamida siz qurilmangiz konfiguratsiyasini o'zgartirishingiz mumkin.

4 -qadam: simli qurilma

Ulanish qurilmasi
Ulanish qurilmasi
Ulanish qurilmasi
Ulanish qurilmasi

Bu erda qurilmani ulash sxemasi to'liq bog'liq, M0 va M1 pinli boshqaruv moslamalari qurilmaning ish uslubini o'zgartirishga ruxsat beradi, shuning uchun siz dastur yordamida konfiguratsiyaga o'tishingiz yoki uyg'onish rejimiga o'tishingiz mumkin, kutubxona bu borada sizga yordam beradi. operatsiya.

5 -qadam: Konfiguratsiya

Konfiguratsiya
Konfiguratsiya

Konfiguratsiyani o'rnatish va olish uchun belgilangan buyruq mavjud

void setup () {Serial.begin (9600); kechikish (500); // Barcha pinlarni ishga tushiring va UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // Boshqa barcha operatsiyalardan oldin konfiguratsiya ko'rsatgichini olish muhim Konfiguratsiya konfiguratsiyasi = *(Konfiguratsiya *) c.data; Serial.println (c.status.getResponseDescription ()); Serial.println (c.status.code); printParameters (konfiguratsiya); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation (); // Boshqa barcha operatsiyalardan oldin ma'lumot ko'rsatgichini olish muhim ModuleInformation mi = *(ModuleInformation *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (milya); }

6 -qadam: Konfiguratsiya natijasi

Va natija bo'ladi

Muvaffaqiyatni boshlang 1 ---------------------------------------- HEAD BIN: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (Standart) SpeedUARTDataRate BIN: 11 -> 9600bps (standart) SpeedAirDataRate BIN: 10 -> 2.4kbps (standart) OptionTrans BIN: 0 - > Shaffof uzatish (standart) OptionPullup BIN: 1 -> TXD, RXD, AUX -tortish/tortish OptionWakeup BIN: 0 -> 250ms (standart) OptionFEC BIN: 1 -> Oldinga xatolarni to'g'rilash kalitini yoqish (Standart) OptionPower BIN: 0-> 20dBm (Standart) ---------------------------------------- Muvaffaqiyat 1 ---------------------------------------- HEAD BIN: 11000011 195 C3 Model raqami.: 32 Versiya: 44 Xususiyatlar: 14 ----------------------------------------

7 -qadam: Xabar yuborish

Xabar yuborish
Xabar yuborish

Bu erda kanalga biriktirilgan barcha qurilmalarga xabar yuborish uchun oddiy eskiz

void loop () {// Agar biror narsa mavjud bo'lsa (e32ttl100.available ()> 1) {// ResponseContainer String xabarini o'qing rc = e32ttl100.receiveMessage (); // Agar biror narsa noto'g'ri ketayotgan bo'lsa, chop etish xatosi (rc.status.code! = 1) {rc.status.getResponseDescription (); } else {// Qabul qilingan ma'lumotlarni chop etish Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (kirish); }}

8 -qadam: Arduino uchun qalqon

Arduino uchun qalqon
Arduino uchun qalqon

Men Arduino uchun prototip yaratish uchun juda foydali bo'ladigan qalqon ham yarataman.

Va men bu erda ochiq manba loyihasi sifatida chiqaraman

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

9 -qadam: kutubxona

Kutubxona
Kutubxona

GitHub ombori

Qo'llab -quvvatlash forumi

Qo'shimcha hujjatlar

Tavsiya: