إحدى تقنيات "إنترنت الأشياء" المثيرة للاهتمام هي شبكة LoRa / LoRaWAN ، ولكن في Runet لا يتم وصفها عمليًا. حان الوقت لملء هذه الفجوة ، والأكثر إثارة للاهتمام تجربة "العيش" كيف تعمل.
ما هو لورا؟
هذه هي تقنية الاتصالات بعيدة المدى المملوكة لشركة Semtech والمطبقة في رقائق SX1272 و SX1276. LoRa هو بروتوكول منخفض المستوى يمكن من خلاله تنفيذ بروتوكولات عالية المستوى مثل LoRaWAN.إحدى ميزات معيار LoRa هي إرسال حزم بيانات صغيرة ذات استهلاك منخفض للطاقة. وفقًا للشركة المصنعة ، يمكن أن يصل النطاق في الهواء الطلق إلى 10 كم ، ويمكن أن يكون عمر البطارية عدة سنوات. تختلف ترددات التشغيل حسب البلد وهي 433 أو 868 ميجاهرتز (إصدار الاتحاد الأوروبي) أو 915 ميجاهرتز (إصدار الولايات المتحدة الأمريكية).كيف يعمل؟ التفاصيل تحت القطع.RN2483. , . RN2483 SX1276 , UART, (, Arduino, , etc). , , , eBay .

USB, .
Python:
import serial
from time import sleep
def deviceSend(device, cmd):
try:
print cmd
device.write(cmd + "\r\n")
line = device.readline()
if line is not None and len(line) > 0:
r = line.decode('utf-8').strip()
print "> " +r
return
except Exception as e:
pass
if __name__ == "__main__":
port = serial.Serial(port="COM20", baudrate=57600, timeout=5)
deviceSend(port, "sys reset")
sleep(2)
deviceSend(port, "mac pause")
deviceSend(port, "radio set freq 868000000")
deviceSend(port, "radio set pwr -3")
deviceSend(port, "radio set mod lora")
deviceSend(port, "radio set sf sf7")
deviceSend(port, "radio set bw 125")
deviceSend(port, "radio tx 0123456789")
sleep(0.5)
line = port.readline()
print line.strip()
deviceSend(port, "mac resume")
.
pwr — , -3..15dB
frequency —
mac pause — lorawan, (p2p)
tx —
mod — . 2 , lora fsk.
bw — , 125, 250, 500.
sf — spread factor, .
sf7 sf12 .

, . 255 , .
بالنسبة للاستقبال ، من الضروري ضبط نفس المعلمات الخاصة بالإرسال ، وإلا لن "تسمع" أجهزة المودم بعضها البعض. يتم إعطاء الكود أدناه ، البرنامج في حلقة لا نهائية "يستمع" إلى البيانات الموجودة على المنفذ التسلسلي.كود المصدرimport serial
from time import sleep
def deviceSend(device, cmd):
try:
print cmd
device.write(cmd + "\r\n")
line = device.readline()
if line is not None and len(line) > 0:
r = line.decode('utf-8').strip()
print "> " +r
return r
except Exception as e:
pass
return ""
if __name__ == "__main__":
port = serial.Serial(port="COM20", baudrate=57600, timeout=5)
deviceSend(port, "sys reset")
sleep(2)
deviceSend(port, "mac pause")
deviceSend(port, "radio set freq 868000000")
deviceSend(port, "radio set pwr -3")
deviceSend(port, "radio set mod lora")
deviceSend(port, "radio set sf sf7")
deviceSend(port, "radio set bw 125")
deviceSend(port, "radio set wdt 5000")
print "Start listening"
try:
while True:
ans = deviceSend(port, "radio rx 0")
if ans == "ok":
r = port.readline().strip()
if r != "err" and len(r) > 0:
print "> " + r
sleep(0.1)
except KeyboardInterrupt:
pass
deviceSend(port, "mac resume")
, , - serial port. ( ) Raspberry Pi, .

RN2483 , PDF «RN2903 LoRa Technology Module Command Reference User’s Guide».
Semtech Lora Calculator, ( , ) — , , .

, SX1276 1000 30 8 100 10dBm.
لفحص مدى عملي ، تم ترك أحد أجهزة المودم في الشقة بجوار النافذة ، والثاني متصل بـ Raspberry Pi وأخرج إلى الشارع. تعد بعض المصادر بمدى يبلغ حوالي 3 كم في المناطق الحضرية. النتيجة ، للأسف ، ليست جيدة: في الممارسة العملية ، بأقصى طاقة وهوائي بتردد 868 ميجاهرتز ، تكون الإشارة مكتومة تمامًا بالفعل بعد حوالي 3 مباني سكنية. بالطبع ، في الأماكن المفتوحة ، يكون النطاق أعلى ، لكن الأمر يستحق "تحويل الزاوية" ، حيث تختفي الإشارة بسرعة كبيرة. بشكل عام ، لا يمكن الحصول على نتيجة 3 كم في المدينة إلا إذا وضعت الهوائي على برج التلفزيون ، يمكنك الاعتماد على 300 متر في أحسن الأحوال. لكن هذا ليس سيئًا للغاية ، نظرًا لضعف طاقة الإشارة المرسلة.سعر الإصدار
معلومات لأولئك الذين يرغبون في تكرار التجارب أو استخدام LoRa في تصاميمهم. سعر مجموعتهم من أجهزة المودم rn2483 الجاهزة للاستخدام على eBay هي 80EUR. بشكل منفصل ، يمكن شراء الوحدة مع SX1276 الملحوم من البائعين من الصين مقابل 12 دولارًا مع الشحن المجاني. يمكن شراء شريحة SX1276 بدون أي ربط مقابل 9 دولارات (الرمز الموصوف في المقالة مناسب فقط لـ RN2483 ، عند استخدام شريحة SX1276 ، يجب برمجته على مستوى أقل).الاستنتاجات
LoRa ( -) . LoRa , ( ). , , LoRa — , . — , , , . , «» . , , . «» LoraWAN, . , , .
RN2483 LoRaWAN.
:
— RN2483 datasheet
ww1.microchip.com/downloads/en/DeviceDoc/40001784B.pdf— LoRa FAQ
www.link-labs.com/lora-faqs— Semtech SX1272
www.semtech.com/wireless-rf/rf-transceivers/sx1272— Semtech LoRa Calculator
www.semtech.com/apps/filedown/down.php?file=SX1272LoRaCalculatorSetup1%271.zipRN2483 Raspberry Pi Arduino github.