Search Code

የDIY ርቀት መቆጣጠሪያ ፕሮጀክት፡ 13 ማይል ያለ Wi-Fi/ያለ SIM Heltec LoRa 32 ሞጁል

ይህ ትምህርት ከ: የ WiFi LoRa መግቢያ

የDIY ርቀት መቆጣጠሪያ ፕሮጀክት፡ 13 ማይል ያለ Wi-Fi/ያለ SIM Heltec LoRa 32 ሞጁል

የረጅም ርቀት ሎራ የርቀት መቆጣጠሪያ ከሄልቴክ ዋይፋይ ሎራ 32 ጋር

ከ15 ማይል ወይም 21 ኪሎ ሜትር በላይ ሆነው ማራገቢያ፣ መብራት፣ የውሃ ፓምፕ ወይም የደህንነት ማንቂያ መቆጣጠር መቻልን አስቡ፣ ያለ ሲም ካርድ ወይም ምንም ክፍያ ሳይከፍሉ። ይህ የሚቻለው ሎራ (ረጅም ርቀት) ቴክኖሎጂን በመጠቀም ነው፣ እና በዚህ መመሪያ ውስጥ፣ እንደዚህ አይነት ስርዓት እንዴት እንደሚገነቡ በትክክል እናሳይዎታለን። ኃይለኛውን ሄልቴክ ዋይፋይ ሎራ 32 ሞጁል እንጠቀማለን፣ በሚያምር ሁኔታ በጠንካራው ሜሽኖሎጂ N35 መያዣ ውስጥ የተቀመጠ፣ ለረጅም ጊዜ አሰራር 3000mAh ባትሪን ያካትታል።

ይህ ፕሮጀክት አስተላላፊ እና ተቀባይ በሁለት የተለያዩ መንገዶች ጭነትን ለመቆጣጠር እንዴት እንደሚዘጋጁ ያሳያል፡ ቀላል የማብራት/የማጥፋት ተግባር እና የመቀያየር ተግባር። የሃርድዌር መገጣጠምን፣ የሽቦ አያያዝን፣ የኮድ ቅንብሮችን እንሸፍናለን እና የእውነተኛ አለም የርቀት ሙከራን እናሳይዎታለን።


ክፍሎች እና ሃርድዌር

በፕሮጀክታችን እምብርት ላይ ለከፍተኛ ርቀት እና አስተማማኝነት አብረው ለመስራት የተነደፉ ጥቂት ቁልፍ ክፍሎች አሉ።

  • ሄልቴክ ዋይፋይ ሎራ 32 V3፡ ይህ አብሮ የተሰራ የሎራ የመገናኛ ቺፕ እንዲሁም የዋይፋይ እና የብሉቱዝ አቅሞች ያሉት ሁለገብ ማይክሮ መቆጣጠሪያ ነው። እንደ አርዱኖ ሙሉ በሙሉ ፕሮግራም ሊደረግ የሚችል ነው፣ ይህም ግብዓቶችን እንድናነብ እና ውጤቶችን እንድንቆጣጠር ያስችለናል።
  • ሜሽኖሎጂ N35 መያዣ እና ባትሪ፡ ይህ በተለይ ለሄልቴክ ሞጁል የተነደፈ ጠንካራ መያዣ ነው። እንደ ኪት ሲገዙ፣ 3000mAh ባትሪን ያካትታል፣ ይህም ለረጅም ጊዜ ማስተላለፍ እና መቀበል በተለይም በሩቅ ቦታዎች አስፈላጊ ነው።
  • ከፍተኛ ትርፍ አንቴና፡ በጣም ጥሩውን ርቀት ለማግኘት፣ ከፍተኛ ትርፍ ያለው አንቴና እንጠቀማለን፣ ይህም ከመደበኛው አንቴና ጋር ሲነጻጸር የምልክት ጥንካሬን በእጅጉ ያሻሽላል።
  • ሪሌይ ወይም ባዘር፡ ለተቀባዩ፣ እንደ ማራገቢያ እና መብራት ያሉ ከፍተኛ ኃይል ያላቸውን የኤሲ ወይም የዲሲ መሳሪያዎችን ለመቆጣጠር ሪሌይ ወይም ለማንቂያ አፕሊኬሽኖች ቀላል ባዘር ማገናኘት ይችላሉ።

የሃርድዌር መገጣጠም

ክፍሉን መገጣጠም ቀላል ሂደት ነው፣ በቪዲዮው ውስጥ ከ05:56 አካባቢ እንደሚታየው። የN35 ኪት የሄልቴክ ሞጁልን፣ 3000mAh ባትሪውን፣ መያዣውን፣ ከማራዘሚያ ገመድ ጋር አንቴናን እና የፒን ራሶችን ይዟል።

ዋናዎቹ ደረጃዎች አዝራሮቹን በመያዣው ውስጥ ማስቀመጥ፣ የባትሪውን ሽቦ ማለፍ፣ የአንቴና ማራዘሚያ ገመዱን ከሞጁሉ ጋር ማገናኘት፣ ሞጁሉን በውስጥ ማስቀመጥ እና ባትሪውን ማገናኘት ያካትታሉ። ከዚያም መያዣውን ዝም ብለው ይዝጉት እና የአንቴና መያዣውን ከውጭ ያስጠብቁ። የመጀመሪያው የመያዣው ስሪት የአንቴና መያዣውን ለመግጠም ትንሽ ማሻሻያ እንደሚያስፈልገው ልብ ሊባል ይገባል፣ ነገር ግን ሜሽኖሎጂ በአዲሶቹ ቡድኖች ውስጥ ይህንን ችግር አስተካክሏል።


ለተቀባዩ ጭነት የሽቦ አያያዝ

በተቀባዩ በኩል፣ የውጤት መሳሪያዎን ያገናኛሉ። ከታች በቪዲዮው በ11:17 እንደተገለጸው ለሁለቱም ሪሌይ እና ባዘር የሽቦ መመሪያዎች አሉ።

ሪሌይን ማገናኘት

ሪሌይ እንደ በኤሌክትሪክ የሚሰራ መቀየሪያ ሆኖ ይሰራል፣ ይህም ከፍተኛ ኃይል ያለውን ጭነት እንዲቆጣጠሩ ያስችልዎታል።

  • የሪሌዩ ሲግናል ፒን ከሄልቴክ ሎራ ሞጁል ፒን 4 ጋር ይገናኛል።
  • የሪሌዩ የመሬት ፒን በሞጁሉ ላይ ካለው GND ፒን ጋር ይገናኛል።
  • አስፈላጊ፡ የሪሌዩ የVCC (ኃይል) ፒን በውጫዊ 5V የኃይል አቅርቦት መሰጠት አለበት። የሞጁሉ 3.3V ውጤት የሪሌዩን የአሁኑን ፍሰት በአስተማማኝ ሁኔታ መቆጣጠር አይችልም።
  • የውጫዊውን የኃይል አቅርቦት መሬት ከሄልቴክ ሞጁል መሬት ጋር በማገናኘት የጋራ መሬት መፍጠር አለብዎት። ይህ ለወረዳው እንዲሰራ ወሳኝ ነው።
Helte_Wifi_LoRA 32

ባዘርን በትራንዚስተር ማገናኘት

ለቀላል የድምጽ ማንቂያ፣ ባዘር መጠቀም ይችላሉ። ከማይክሮ መቆጣጠሪያው ፒን ከመጠን በላይ የአሁኑን ፍሰት ላለመሳብ፣ እሱን ለማሽከርከር 2N2222 NPN ትራንዚስተር እንጠቀማለን።

  • የሞጁሉን ፒን 4 ከ1kΩ ተቃዋሚ ጋር ያገናኙ። የተቃዋሚው ሌላኛው ጫፍ ከትራንዚስተሩ ቤዝ (መካከለኛ ፒን) ጋር ይገናኛል።
  • የትራንዚስተሩ ኢሚተር (ግራ ፒን፣ ጠፍጣፋው ጎን ወደ እርስዎ ሲያጋጥም) ከGND ጋር ይገናኛል።
  • የትራንዚስተሩ ኮሌክተር (ቀኝ ፒን) ከባዘሩ አሉታዊ (-) ተርሚናል ጋር ይገናኛል።
  • የባዘሩ አዎንታዊ (+) ተርሚናል በሄልቴክ ሞጁል ላይ ካለው 3.3V ፒን ጋር ይገናኛል።
Helte_Wifi_LoRA 32 with buzzer

የአርዱኖ IDE እና የቤተ-መጻሕፍት ማዋቀር

ኮዱን ከመጫንዎ በፊት፣ የአርዱኖ IDE ከሄልቴክ ቦርዶች ጋር እንዲሰራ ማዋቀር ያስፈልግዎታል። ሂደቱ በቪዲዮው ውስጥ በ14:37 ይጀምራል።

  1. የESP32 ቦርዶችን ይጫኑ፡- በ Arduino IDE ውስጥ፣ ወደ Boards Manager ይሂዱ እና ESP32 ን ይፈልጉ። በ Espressif Systems የቀረበውን ፓኬጅ ይጫኑ።
  2. የHeltec ቦርድ URL ያክሉ፡- ወደ File > Preferences ይሂዱ። በ "Additional Boards Manager URLs" ውስጥ፣ ለ Heltec ESP32 ተከታታይ የ JSON አገናኝን ያክሉ። ይህ አገናኝ ከጽሑፉ በታች ባለው የመርጃ ገጽ ላይ ይቀርባል።
  3. የHeltec ESP32 ቦርዶችን ይጫኑ፡- ወደ Boards Manager ይመለሱ፣ Heltec ESP32 ን ይፈልጉ እና ፓኬጁን ይጫኑ።
  4. የሚፈለጉ ቤተ-መጻሕፍትን ይጫኑ፡- ወደ Library Manager ይሂዱ እና የሚከተሉትን ይጫኑ፡-
    • Heltec ESP32 dev boards
    • Adafruit GFX Library (እና ለጥገኞቹ "Install All" ን ይጫኑ)
  5. የRobojax ቤተ-መጻሕፍትን ይጫኑ፡- ከመርጃ ገጹ ላይ ብጁ Robojax Heltec LoRa 32 ዚፕ ቤተ-መጻሕፍትን ያውርዱ። በ Arduino IDE ውስጥ፣ ወደ Sketch > Include Library > Add .ZIP Library ይሂዱ እና ያወረዱትን ፋይል ይምረጡ።
  6. ቦርዱን ይምረጡ፡- በመጨረሻም፣ ወደ Tools > Board ይሂዱ እና Heltec WiFi LoRa 32 (V3) ን ይምረጡ።

የኮድ ቅንብሮች ተብራርተዋል

ለዚህ ፕሮጀክት ሦስት የተለያዩ የኮድ ረቂቆች አሉን፡- አንዱ ለቀላል የመብራት/ማጥፋት አስተላላፊ፣ አንዱ ለመቀያየር አስተላላፊ፣ እና አንዱ ለተቀባይ። ቤተ-መጻሕፍቱ ውስብስብ ክፍሎችን ይይዛል፣ ስለዚህ በእያንዳንዱ ፋይል አናት ላይ ጥቂት ቅንብሮችን ብቻ ማስተካከል ያስፈልግዎታል። የኮድ ማብራሪያው በቪዲዮው ውስጥ ከ19:00 ይጀምራል።

አስተላላፊ (TX) - ቀላል የመብራት/ማጥፋት ኮድ ቅንብሮች

ይህ ኮድ አዝራሩ በሚያዝበት ጊዜ ብቻ ሪሌይን ያበራል።

// በ OLED ስክሪን ላይ ለማሳየት ጽሑፍ
const char *displayTexttitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayON = "ON";
const char *displayTextRelayOFF = "OFF";

// የደህንነት ቁልፍ እና ድግግሞሽ (ከተቀባዩ ጋር መዛመድ አለበት)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

// የማስተላለፊያ ኃይል (2-21፣ ከፍ ያለ የበለጠ ጠንካራ ነው)
#define TX_OUTPUT_POWER 14 

አስተላላፊ (TX) - የመቀያየር ኮድ ቅንብሮች

ይህ ኮድ በእያንዳንዱ የአዝራር ጭመቅ የሪሌይን ሁኔታ (ከመብራት ወደ ማጥፋት፣ ወይም ከማጥፋት ወደ መብራት) ይቀይረዋል።

// ለሴሪያል ሞኒተር ማረም እውነት ያድርጉት፣ ለመደበኛ አጠቃቀም ሐሰት ያድርጉት
bool debug = true; 
// የተሰራው የተጠቃሚ አዝራር ፒን 0 ነው
#define PUSH_BUTTON_PIN 0  

// በ OLED ስክሪን ላይ ለማሳየት ጽሑፍ
const char *displayTextTitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayToggleON = "TOG-ON";
const char *displayTextRelayToggleOFF = "TOG-OFF";

// የደህንነት ቁልፍ እና ድግግሞሽ (ከተቀባዩ ጋር መዛመድ አለበት)
const char *userKey = "6tfDs$wEq3!"; 
#define RF_FREQUENCY 915555000 

// የማስተላለፊያ ኃይል (2-21)
#define TX_OUTPUT_POWER 2 

ተቀባይ (RX) ኮድ ቅንብሮች

ይህ ነጠላ ተቀባይ ኮድ ከሁለቱም ቀላል እና መቀያየር አስተላላፊዎች ጋር ይሰራል።

// ከሪሌይ ሲግናል ግብዓት ጋር የተገናኘው ፒን
#define RELAY_CONTROL_PIN 4

// በ OLED ስክሪን ላይ ለማሳየት ጽሑፍ
const char *displayTextTitle = "Relay:"; 
const char *displayTextTX = "(RX)"; 
const char *displayTextRelayON = "ON"; 
const char *displayTextRelayOFF = "OFF"; 
const char *displayTextRelayToggleON = "TOG-ON"; 
const char *displayTextRelayToggleOFF = "TOG-OFF"; 

// የደህንነት ቁልፍ እና ድግግሞሽ (ከአስተላላፊው ጋር መዛመድ አለበት)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

በጣም አስፈላጊuserKey እና RF_FREQUENCY እርስ በርስ እንዲግባቡ በአስተላላፊው እና በተቀባዩ ላይ ተመሳሳይ መሆን አለባቸው።


ማሳያ እና የ13-ማይል ርቀት ሙከራ

ስርዓቱ በላብራቶሪ አካባቢ ውስጥ ያለስህተት ይሰራል፣ የተቀባዩ ሪሌይ ወይም ባዘር በአስተላላፊው ላይ ለሚደረጉ የአዝራር ጭመቆች ወዲያውኑ ምላሽ ይሰጣል። ነገር ግን የ LoRa እውነተኛ ኃይል ርቀቱ ነው።

25:03 ጀምሮ እንደሚታየው የረጅም ርቀት ሙከራ ተካሂዷል። አስተላላፊው በኃይል ደረጃ 20 ተዋቅሯል፣ ከፍተኛ ትርፍ ያለው አንቴና ተጭኖበታል፣ እና ግልጽ የእይታ መስመርን ለማረጋገጥ በሐይቅ ዳርቻ ላይ ከውሃው ወለል በላይ 10 ሜትር ርቀት ላይ ባለ ትሪፖድ ላይ ተቀምጧል። ከዚያም ተቀባዩ ወደ ሐይቁ ማዶ ተወሰደ።

ውጤቱ አስደናቂ ስኬት ነበር። ከ13.04 ማይል፣ ወይም 20.98 ኪሎ ሜትር ርቀት ላይ የተረጋጋ ምልክት ተቀብሏል። ይህ የሚያሳየው በትክክለኛ ዝግጅት፣ መሣሪያዎችን በሩቅ ርቀት ላይ በአስተማማኝ ሁኔታ መቆጣጠር እንደሚችሉ ነው፣ ይህም እንደ የርቀት ግብርና ክትትል፣ የበር መቆጣጠሪያ፣ ወይም የረጅም ርቀት ሌብራ ማንቂያ ስርዓት ላሉ መተግበሪያዎች ፍጹም ያደርገዋል።


የቪዲዮ የጊዜ ማህተሞች

  • 00:00 - ለረጅም ርቀት ቁጥጥር መግቢያ
  • 02:42 - LoRa ምንድን ነው?
  • 03:20 - የክፍሎች አጠቃላይ እይታ (Heltec፣ N35 መያዣ)
  • 05:56 - መፈታት እና የሃርድዌር መገጣጠም
  • 11:17 - የወልና ገመድ አገናኝ ተብራርቷል፡- ሪሌይ እና ባዘር
  • 14:37 - Arduino IDE እና የቤተ-መጻሕፍት ዝግጅት
  • 19:00 - የኮድ ቅንብሮች ተብራርተዋል (TX እና RX)
  • 25:03 - ማሳያ እና የ13-ማይል ርቀት ሙከራ
አንድ ኮድ የተያያዘ የለም።

ምንጮች እና ምንጮች

ፋይሎች📁

Arduino ቤተ መዝገቦች (zip)

ሌላ ፋይሎች