Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54
Lora son illərdə çox məşhurdur. Bu texnologiyadan istifadə edən simsiz rabitə modulu ümumiyyətlə ucuzdur (sərbəst spektrdən istifadə edir), kiçik ölçüdə, enerjiyə qənaətcil və uzun bir ünsiyyət məsafəsinə malikdir və əsasən IoT terminalları arasında qarşılıqlı ünsiyyət və ya ev sahibi ilə məlumat mübadiləsi üçün istifadə olunur. Bazarda çox kiçik olan SX1278 (uyğun) çiplə təchiz edilmiş RFM96W kimi bir çox LoRa modulu var. MakePython ESP32 ilə ağ geçidi olaraq istifadə edirəm.
Sonra, temperatur və rütubət məlumatlarını ağ geçidinə göndərmək üçün iki LoRa qovşağından istifadə edəcəm və sonra şluz vasitəsilə İnternetə yükləyəcəyəm. Burada birdən çox LoRa qovşağının uzaq məlumatlarını ağ geçidi vasitəsilə buluda yükləməyi öyrənəcəksiniz.
Addım 1: Təchizat
1*MakePython ESP32
MakePython ESP32, inteqrasiya olunmuş SSD1306 OLED ekranı olan bir ESP32 lövhəsidir.
2*Maduino LoRa Radio
Maduino Lora Radio, Atmel'in Atmega328P MCU və Lora moduluna əsaslanan bir IoT (Şeylər İnterneti) Həllidir. IoT layihələri üçün əsl bir layihə ola bilər (xüsusən uzun mənzilli, aşağı güc tətbiqləri)
2*DHT11
1*MakePython Lora
Addım 2: LoRa Node
Bu Maduino Lora Radiosunun sxemidir.
Arduino Lora Radio modulu LoRa düyünü olaraq, temperatur və rütubət məlumatlarını ağ geçidinə göndərmək üçün istifadə edirik.
(Bu WiKi, Maduino Lora Radionu necə istifadə edəcəyinizi və məlumatların göndərilməsini və alınmasını təqdim edir)
Addım 3: Düyün və Sensor Bağlantısı
DHT11 -in VCC və GND, Maduino 3V3 və GND -yə, DATA pin isə Maduino D4 -ə bağlıdır.
0 -cu qovşaq parkda, 1 -ci qovşaq şirkətin yaxınlığındakı ofis binasındadır, bir -birindən təxminən 2 kilometr aralıdadırlar və sonra evdə temperatur və rütubət məlumatlarını alıram.
Addım 4: Məlumatları Ağ Geçidinə göndərin
TransmitterDHT11.ino'yu yükləyin, Arduino IDE -də açın.
Bir düyün əlavə edərkən, uyğun olaraq düyün nömrəsini dəyişdirin. Məsələn, indi 2 qovşaqdan istifadə edin, nodenumu dəyişdirmək üçün birinci düyün = 0 proqramı, ikinci düyün nodenumu dəyişdirmək üçün = 1 proqramı işlədin və s. Daha çox düyün əlavə edə bilərsiniz.
int16_t paket sayı = 0; // paket sayğacı, hər buraxılışa görə artırırıq
int16_t nodenum = 0; // Node nömrəsini dəyişdirin
Məlumat toplayın və çap edin
String mesajı = "#"+(String) nodenum+"Rütubət:"+(String) rütubət+"% Temperatur:"+(String) temperatur+"C"+"num:"+(String) paket sayı; Serial.println (mesaj); paket ++;
Rf95_server -ə mesaj göndərin
uint8_t radioPacket [message.length ()+1];
message.toCharArray (radioPacket, message.length ()+1); radioPacket [message.length ()+1] = '\ 0'; rf95.send ((uint8_t *) radioPacket, message.length ()+1);
Serial monitoru açın, toplanan temperatur və rütubət məlumatlarını görə və göndərə bilərsiniz.
#0 Rütubət: 6.00% Temperatur: 27.00C sayı: 0
Göndər: rf95_serverə göndərilir Göndərilir … Paketin tamamlanmasını gözləyirik … Cavab gözləyirəm… Cavab yoxdur, ətrafda dinləyici varmı?
Bir kənara qoyun, indi Lora Ağ geçidini düzəltməliyik.
Addım 5: MakePython Lora
Bu RFM96W modulunun və MakePython ESP32 -nin uyğun pinidir. MakePython ESP32 ilə əlaqəni asanlaşdırmaq üçün RFM96W modulu olan bir dövrə lövhəsi düzəltdim. Bəli, eyni anda məlumat göndərə və qəbul edə bilən iki RFM96W var, amma indi yalnız birinə ehtiyacım var.
Addım 6: LoRaWAN Ağ Geçidi
LoRaWAN, aşağı enerji istehlakı, ölçeklenebilirlik, yüksək xidmət keyfiyyəti və təhlükəsiz uzun məsafəli simsiz şəbəkə təmin edə bilən LoRa-ya əsaslanan aşağı güclü bir geniş sahə şəbəkəsidir.
MakePython Lora və ESP32 -ni yığaraq uzaq məlumatları qəbul edə və İnternetə yükləyə biləcək bir ağ geçidi hazırlayın.
Addım 7: Kodu yükləyin
Bütün 'xxx.py' fayllarını WiKi -dən yükləyin və ESP32 -ə yükləyin.
LoRaDuplexCallback.py faylını açın, ESP32 -nin şəbəkəyə qoşula və serverə məlumat yükləyə bilməsi üçün bəzi düzəlişlər etməlisiniz.
ThingSpeak -də əldə etdiyiniz API_KEY -ni dəyişdirin (bunu necə əldə edəcəyinizi daha sonra təqdim edəcəyəm)
#https://thingspeak.com/channels/1047479
API_KEY = 'UBHIRHVV9THUJVUI'
WiFi qoşulmaq üçün SSID və PSW dəyişdirin
ssid = "Makerfabs"
pswd = "20160704"
Addım 8: Məlumat əldə edin
Məlumatları aldıqdan sonra ESP32 -yə nə edəcəyinizi söyləyə biləcəyiniz LoRaDuplexCallback.py faylında on_receive (lora, payload) funksiyasını tapın. Aşağıdakı kod alınan temperatur və rütubət məlumatlarını təhlil edir və göstərir.
def on_receive (lora, faydalı yük):
lora.blink_led () rssi = lora.packetRssi () cəhd edin: length = len (payload) -1 myStr = str ((payload [4: length]), 'utf-8') length1 = myStr.find (':') myNum1 = myStr [(length1+1):(length1+6)] myNum2 = myStr [(length1+20):(length1+25)] print ("*** Alınan mesaj *** / n {}". format (payload)) if config_lora. IS_LORA_OLED: lora.show_packet (("{}". format (payload [4: length])), rssi) if wlan.isconnected (): global msgCount print ('Şəbəkəyə göndərilir …')) node = int (str (yük [5: 6], 'utf-8')) əgər node == 0: URL = "https://api.thingspeak.com/update?api_key="+API_KEY+"& field1 = "+myNum1+" & field2 = "+myNum2 res = urequests.get (URL) çap (res.text) elif node == 1: URL =" https://api.thingspeak.com/update?api_key= "+API_KEY+" & field3 = "+myNum1+" & field4 = "+myNum2 res = urequests.get (URL) e: print (e) print (" RSSI ilə {} n ". format (rssi)) istisna olmaqla istisna olmaqla, çap (res.text) çap edin.
Düyünləri ayırmaq üçün verilən saya və məlumatların URL vasitəsilə İnternetə yüklənməsinə görə, istənilən vaxt fərqli qovşaqların uzaqdakı məlumatlarını izləyə bilərik. Daha çox qovşaq əlavə edə və koda bənzər dəyişikliklər edə bilərsiniz.
düyün == 0 olarsa:
URL = "https://api.thingspeak.com/update?api_key="+API_KEY+"& field1 ="+myNum1+"& field2 ="+myNum2 res = urequests.get (URL) çapı (res.text)
Addım 9: ThingSpeak IoT istifadə edin
Addımlar:
- Https://thingspeak.com/ saytında bir hesab yazın. Biriniz varsa, birbaşa daxil olun.
- Yeni ThingSpeak kanalı yaratmaq üçün Yeni Kanala vurun.
- Giriş adı, Təsvir, Sahə 1 seçin. Sonra kanalı aşağıya qeyd edin.
- API Açarları seçimini vurun, API Açarını kopyalayın, proqramda istifadə edəcəyik.
Addım 10: Nəticə
0 kilometr və 1 -ci qovşaq məlumatlarını bir -birindən 2 kilometr aralıda olsa da ekranda görə bilərsiniz.
ThingSpeak hesabınıza daxil olun və yaratdığınız kanala vurun, yüklənmiş temperatur və rütubət məlumatlarını görə bilərsiniz.
Field1 qrafiki və field2 qrafikləri Lora 0 nodunun rütubət və temperatur məlumatları, field3 qrafiki və field4 qrafiki isə Lora node 1 -in rütubət və temperatur məlumatlarıdır.
Tövsiyə:
Asan əyilməyə əsaslanan rəng simsiz Rubik kub lampasını dəyişdirir: 10 addım (şəkillərlə birlikdə)
Asan əyilməyə əsaslanan rəng simsiz Rubik kub lampasını dəyişdirir: Bu gün, hansı tərəfin yuxarı olduğuna görə rəngini dəyişən bu möhtəşəm Rubik Cube-esque lampasını quracağıq. Küp, standart bir mikro usb kabeli ilə doldurulmuş kiçik bir LiPo batareyası ilə işləyir və sınağımda batareyanın ömrü bir neçə gündür. Bu
MicroPython ESP32: 5 Addımlarına əsaslanan MQTT
MicroPython ESP32 -ə əsaslanan MQTT: Heyvan pişiklərini saxlamağı sevirəm. Bir günlük gərgin işdən sonra evə çatanda pişik məni rahatlaşdıra bilər. Çətin məşqdən sonra bu pişik " restoranda " hər gün. Ancaq son vaxtlar bir neçə gün səyahət etməliyəm və
RaspberryPi 4: 15 Addımlarına əsaslanan Ucuz IoT Hava Keyfiyyət Monitoru (Şəkillərlə birlikdə)
RaspberryPi 4: Santiaqo, Çilidə qışda baş verən ekoloji fövqəladə hallar zamanı aşağı qiymətli bir IoT Hava Keyfiyyət Monitoru dünyanın ən gözəl ölkələrindən birində yaşamaq şərəfinə sahibdir, amma təəssüf ki, bu güllərin hamısı deyil. Qış mövsümündə Çili hava çirkliliyindən çox əziyyət çəkir
Beaglebone Black və OpenHAB -a əsaslanan Smart Power Strip: 7 addım (şəkillərlə birlikdə)
Beaglebone Black və OpenHAB -a əsaslanan Smart Power Strip: !!!!! Şəbəkə (110/220V) ilə oynamaq təhlükəlidir, çox diqqətli olun !!!!! " Raspberry Pi " və "Köhnə dizayn" şəkilində göstərilən iki Arduino .Bu yeni dizayn
Sparky - DIY İnternetə əsaslanan Telepresence Robotu: 15 Addım (Şəkillərlə birlikdə)
Sparky - DIY Web -based Telepresence Robotu: Sparky adı? Self Portrait Artifact? Fırlanan Şassi I? 90 -cı illərin əvvəllərində başlayan bir sənət layihəsi üçün çətin bir başlıq. O vaxtdan bəri Sparky, bir neçə körpə monitoru olan böyük ölçülü bir RC oyuncağından inkişaf etdi. video caa