ዝርዝር ሁኔታ:

በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ 10 ደረጃዎች (ከስዕሎች ጋር)
በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ 10 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ 10 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ 10 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: በማይክሮ ፋይናንስ እና በባንክ 50% ብድር የሚሼጡ መኪኖች ዋጋ 2024, ህዳር
Anonim
ሎራ ጌትዌይ በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ
ሎራ ጌትዌይ በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ
በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ
በማይክሮ ፓይቶን ESP32 ላይ የተመሠረተ ሎራ ጌትዌይ

ከቅርብ ዓመታት ወዲህ ሎራ በጣም ተወዳጅ ነበረች። ይህንን ቴክኖሎጂ በመጠቀም የገመድ አልባ የግንኙነት ሞጁል ብዙውን ጊዜ ርካሽ (ነፃ ስፔክትሪን በመጠቀም) ፣ አነስተኛ መጠን ፣ ኃይል ቆጣቢ እና ረጅም የግንኙነት ርቀት ያለው ሲሆን በዋናነት በአይኦቲ ተርሚናሎች ወይም ከአስተናጋጅ ጋር ባለው የመረጃ ልውውጥ መካከል ለጋራ ግንኙነት ያገለግላል። በገበያው ላይ ብዙ የሎራ ሞጁሎች አሉ ፣ እንደ RFM96W ፣ እሱም SX1278 (ተኳሃኝ) ቺፕ የተገጠመለት ፣ በጣም ትንሽ ነው። በ MakePython ESP32 እንደ መግቢያ በር እጠቀማለሁ።

በመቀጠልም የሙቀት እና የእርጥበት መረጃን ወደ መግቢያ በር ለመላክ ሁለት LoRa አንጓዎችን እጠቀማለሁ ፣ ከዚያም በበሩ በኩል ወደ በይነመረብ እሰቅላለሁ። እዚህ በርቀት በር በኩል የበርካታ የሎራ ኖዶች የርቀት መረጃን ወደ ደመና እንዴት እንደሚሰቅሉ ይማራሉ።

ደረጃ 1 - አቅርቦቶች

አቅርቦቶች
አቅርቦቶች

1*MakePython ESP32

MakePython ESP32 የተቀናጀ SSD1306 OLED ማሳያ ያለው የ ESP32 ሰሌዳ ነው።

2*Maduino LoRa ሬዲዮ

ማዱኒኖ ሎራ ሬዲዮ በአትሜል Atmega328P MCU እና በሎራ ሞዱል ላይ የተመሠረተ የ IoT (የነገሮች በይነመረብ) መፍትሄ ነው። ለ IoT ፕሮጄክቶች (በተለይም ረጅም ርቀት ፣ ዝቅተኛ የኃይል ትግበራ) እውነተኛ ፕሮጀክት ሊሆን ይችላል

2*DHT11

1*MakePython ሎራ

ደረጃ 2: LoRa Node

LoRa መስቀለኛ መንገድ
LoRa መስቀለኛ መንገድ
LoRa መስቀለኛ መንገድ
LoRa መስቀለኛ መንገድ

ይህ የማዲኖኖ ሎራ ሬዲዮ ዘዴ ነው።

አርዱዲኖ ሎራ ሬዲዮ ሞዱል እንደ ሎራ ኖድ ፣ እኛ የሙቀት እና የእርጥበት መረጃን ወደ በር ለመላክ እንጠቀምበታለን።

(ይህ WiKi ማዲኖኖ ሎራ ሬዲዮን እንዴት መጠቀም እና መረጃ መላክ እና መቀበል እንደሚቻል ያስተዋውቃል)

ደረጃ 3 የመስቀለኛ መንገድ እና ዳሳሽ ግንኙነት

የመስቀለኛ መንገድ እና ዳሳሽ ግንኙነት
የመስቀለኛ መንገድ እና ዳሳሽ ግንኙነት
መስቀለኛ እና ዳሳሽ ግንኙነት
መስቀለኛ እና ዳሳሽ ግንኙነት

የ DHT11 ቪሲሲ እና ጂኤንዲ ከ 3V3 እና ከማዲኑኖ GND ጋር የተገናኙ ሲሆን የ DATA ፒን ከማዲኖኖ D4 ጋር ተገናኝቷል።

መስቀለኛ መንገድ 0 በፓርኩ ውስጥ ፣ መስቀለኛ መንገድ 1 በኩባንያው አቅራቢያ በሚገኘው የቢሮ ሕንፃ ውስጥ ፣ እነሱ 2 ኪሎ ሜትር ያህል ርቀት ላይ ናቸው ፣ እና ከዚያ በቤት ውስጥ የሙቀት እና የእርጥበት መረጃዬን አገኛለሁ

ደረጃ 4: መረጃን ወደ ጌትዌይ ይላኩ

TransmitterDHT11.ino ን ያውርዱ ፣ በአርዱዲኖ አይዲኢ ላይ ይክፈቱት።

መስቀለኛ መንገድ ሲጨምሩ የመስቀለኛውን ቁጥር በዚሁ መሠረት ይለውጡ። ለምሳሌ ፣ አሁን 2 አንጓዎችን ይጠቀሙ ፣ ፕሮግራሙን ለማስኬድ nodenum = 0 ን ለመቀየር የመጀመሪያው መስቀለኛ መንገድ ፣ ፕሮግራሙን ለማስኬድ nodenum = 1 ን ለመቀየር ሁለተኛው መስቀለኛ መንገድ ፣ እና ወዘተ ፣ ተጨማሪ መስቀለኛ መንገድ ማከል ይችላሉ።

int16_t packetnum = 0; // የፓኬት ቆጣሪ ፣ በ xmission እንጨምራለን

int16_t nodenum = 0; // የመስቀለኛውን ቁጥር ይለውጡ

መረጃን ሰብስበው ያትሙት

የሕብረቁምፊ መልእክት = "#"+(ሕብረቁምፊ) nodenum+"እርጥበት"+; packetnum ++;

ለ rf95_ አገልጋይ መልዕክት ይላኩ

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);

ተከታታይ ማሳያውን ይክፈቱ ፣ የተሰበሰበውን የሙቀት መጠን እና የእርጥበት መጠን መረጃ ማየት እና ወደ ውጭ መላክ ይችላሉ።

#0 እርጥበት - 6.00% የሙቀት መጠን 27.00C ቁጥር 0

አስተላልፍ ፦ ወደ rf95_ አገልጋይ በመላክ ላይ … በመላክ ላይ … ፓኬት እስኪጠናቀቅ በመጠበቅ ላይ … መልስ በመጠበቅ ላይ… መልስ የለም ፣ በአድማጭ ዙሪያ አድማጭ አለ?

ወደ ጎን አስቀምጠው ፣ አሁን የሎራ በርን ማድረግ አለብን።

ደረጃ 5 - MakePython ሎራ

MakePython ሎራ
MakePython ሎራ
MakePython ሎራ
MakePython ሎራ
MakePython ሎራ
MakePython ሎራ

ይህ የ RFM96W ሞዱል እና MakePython ESP32 ተጓዳኝ ፒን ነው። ከ MakePython ESP32 ጋር ግንኙነትን ለማመቻቸት ፣ ከ RFM96W ሞዱል ጋር የወረዳ ሰሌዳ ሠራሁ። አዎ ፣ በላዩ ላይ ሁለት RFM96W አሉ ፣ ይህም በአንድ ጊዜ ውሂብ መላክ እና መቀበል ይችላል ፣ ግን አሁን እኔ አንድ ብቻ እፈልጋለሁ።

ደረጃ 6: LoRaWAN ጌትዌይ

LoRaWAN ጌትዌይ
LoRaWAN ጌትዌይ

LoRaWAN በሎአራ ላይ የተመሠረተ ዝቅተኛ ኃይል ያለው ሰፊ አውታረ መረብ ነው ፣ ይህም አንድ ሊያቀርብ ይችላል-አነስተኛ የኃይል ፍጆታ ፣ የመጠንጠን ችሎታ ፣ ከፍተኛ የአገልግሎት ጥራት እና ደህንነቱ የተጠበቀ የረጅም ርቀት ገመድ አልባ አውታረመረብ።

የርቀት መረጃን ለመቀበል እና ወደ በይነመረብ ለመስቀል የሚያስችል በር ለማድረግ MakePython Lora እና ESP32 ን ያሰባስቡ።

ደረጃ 7: ኮድ ያውርዱ

ሁሉንም የ ‹xxx.py› ፋይሎች ከ WiKi ያውርዱ እና ወደ ESP32 ይስቀሉ።

LoRaDuplexCallback.py ፋይልን ይክፈቱ ፣ የእርስዎ ESP32 ከአውታረ መረቡ ጋር እንዲገናኝ እና መረጃን ወደ አገልጋዩ እንዲጭን አንዳንድ ማስተካከያዎችን ማድረግ ያስፈልግዎታል።

በ ThingSpeak ውስጥ ያገኙትን API_KEY ያስተካክሉ (በኋላ እንዴት እንደሚያገኙት አስተዋውቃለሁ)

#https://thingspeak.com/channels/1047479

API_KEY = 'UBHIRHVV9THUJVUI'

WiFi ለማገናኘት SSID እና PSW ን ያስተካክሉ

ssid = "Makerfabs"

pswd = "20160704"

ደረጃ 8 - ውሂብ ይቀበሉ

በ LoRaDuplexCallback.py ፋይል ውስጥ on_receive (lora, payload) ተግባርን ያግኙ ፣ ውሂቡን ከተቀበሉ በኋላ ምን ማድረግ እንዳለብዎ ለ ESP32 መንገር ይችላሉ። የሚከተለው ኮድ የተቀበለውን የሙቀት መጠን እና የእርጥበት መረጃ ይተነትናል እና ያሳያል።

def on_receive (ሎራ ፣ የክፍያ ጭነት) ፦

lora.) myNum1 = myStr [(length1+1):(length1+6)] myNum2 = myStr [(length1+20):(length1+25)] ህትመት ("*** የደረሰው መልዕክት *** / n {}")። ቅርጸት (የክፍያ ጭነት)) ከሆነ config_lora. IS_LORA_OLED: lora.show_packet (("{}". ቅርጸት (የክፍያ ጭነት [4: ርዝመት])) ፣ rssi) wlan.isconnected ከሆነ (): ዓለምአቀፍ msgCount print ('ወደ አውታረ መረብ በመላክ ላይ' ')) መስቀለኛ መንገድ = int (str (የክፍያ ጭነት [5: 6] ፣ 'utf-8')) መስቀለኛ መንገድ == 0: URL = "https://api.thingspeak.com/update?api_key="+API_KEY+"& field1 = "+myNum1+" & field2 = "+myNum2 res = urequests.get (URL) ህትመት (res.text) elif node == 1: URL =" https://api.thingspeak.com/update?api_key= "+API_KEY+" & field3 = "+myNum1+" & field4 = "+myNum2 res = urequests.get (ዩአርኤል) ህትመት (res.text) ከልዩ በስተቀር እንደ e: ህትመት (ሠ) ህትመት (" በ RSSI {} n ".format (rssi))

አንጓዎችን ለመለየት ቁጥሩን በመገምገም ፣ እና ውሂቡን በዩአርኤል በኩል ወደ በይነመረብ በመስቀል ፣ በማንኛውም ጊዜ የተለያዩ አንጓዎችን የርቀት ውሂብ መከታተል እንችላለን። ተጨማሪ አንጓዎችን ማከል እና በኮዱ ላይ ተመሳሳይ ለውጦችን ማድረግ ይችላሉ።

መስቀለኛ መንገድ == 0:

URL = "https://api.thingspeak.com/update?api_key="+API_KEY+"& field1 ="+myNum1+"& field2 ="+myNum2 res = urequests.get (URL) ህትመት (res.text)

ደረጃ 9 - ThingSpeak IoT ን ይጠቀሙ

ThingSpeak IoT ን ይጠቀሙ
ThingSpeak IoT ን ይጠቀሙ
ThingSpeak IoT ን ይጠቀሙ
ThingSpeak IoT ን ይጠቀሙ
ThingSpeak IoT ን ይጠቀሙ
ThingSpeak IoT ን ይጠቀሙ

እርምጃዎች ፦

  1. በ https://thingspeak.com/ ውስጥ መለያ ይመዝገቡ። አስቀድመው ካለዎት በቀጥታ ይግቡ።
  2. አዲስ የ ThingSpeak ሰርጥ ለመፍጠር አዲስ ሰርጥ ጠቅ ያድርጉ።
  3. የግቤት ስም ፣ መግለጫ ፣ መስክ ይምረጡ 1. ከዚያ በታች ያለውን ሰርጥ ያስቀምጡ።
  4. የኤፒአይ ቁልፎች አማራጩን ጠቅ ያድርጉ ፣ የኤፒአይ ቁልፍን ይቅዱ ፣ እኛ በፕሮግራሙ ውስጥ እንጠቀማለን።

ደረጃ 10: ውጤት

ውጤት
ውጤት
ውጤት
ውጤት
ውጤት
ውጤት

2 ኪሎ ሜትር ቢለያዩም በማያ ገጹ ላይ የመስቀለኛ 0 እና የመስቀለኛ 1 መረጃን ማየት ይችላሉ።

ወደ ThingSpeak መለያዎ ይግቡ እና እርስዎ በፈጠሩት ሰርጥ ላይ ጠቅ ያድርጉ ፣ የተሰቀለውን የሙቀት መጠን እና እርጥበት ውሂብ ማየት ይችላሉ።

የመስክ 1 ግራፍ እና የመስክ 2 ግራፎች የሎራ መስቀለኛ መንገድ 0 የእርጥበት እና የሙቀት መጠን መረጃዎች ናቸው ፣ እና የመስክ 3 ግራፍ እና የእርሻ 4 ግራፍ የሎራ መስቀለኛ 1 እርጥበት እና የሙቀት መጠን መረጃዎች ናቸው።

የሚመከር: