ዝርዝር ሁኔታ:

NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም 4 ጊዜ እርምጃዎች (ከስዕሎች ጋር)
NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም 4 ጊዜ እርምጃዎች (ከስዕሎች ጋር)

ቪዲዮ: NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም 4 ጊዜ እርምጃዎች (ከስዕሎች ጋር)

ቪዲዮ: NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም 4 ጊዜ እርምጃዎች (ከስዕሎች ጋር)
ቪዲዮ: How to control you lights using nodemcu and wifi .ኖድደምኩ እና ዋይፋይ በመጠቀም መብራቶችን እንዴት እንደሚቆጣጠሩ 2024, ሰኔ
Anonim
Image
Image
NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም የእውነተኛ ጊዜ ክስተት ማሳወቂያዎች
NodeMCU (Arduino) ፣ Google Firebase እና Laravel ን በመጠቀም የእውነተኛ ጊዜ ክስተት ማሳወቂያዎች

በድር ጣቢያዎ ላይ አንድ እርምጃ ሲኖር ማሳወቂያ ፈልገው ያውቃሉ ነገር ግን ኢሜል ትክክለኛው ተስማሚ አይደለም? በሚሸጡበት ጊዜ ሁሉ ድምጽ ወይም ደወል መስማት ይፈልጋሉ? ወይም በቤትዎ ድንገተኛ ሁኔታ ምክንያት አስቸኳይ ትኩረትዎ ያስፈልጋል?

ስለሚወዱት ማንኛውም ነገር ይህ መሣሪያ በእውነተኛ ጊዜ ሊያሳውቅዎት ይችላል።

ደረጃ 1 የወረዳውን ሽቦ ያገናኙ

ወረዳውን ሽቦ ያድርጉ
ወረዳውን ሽቦ ያድርጉ
ወረዳውን ሽቦ ያድርጉ
ወረዳውን ሽቦ ያድርጉ

እኔ የሠራሁት መሣሪያ በድር ጣቢያ ላይ የተደረጉ ሽያጮችን ለማስጠንቀቅ የኖድኤምሲዩ ቦርድ ከ buzzer ጋር ያካትታል። ማይክሮ መቆጣጠሪያው የአርዱዲኖ ሶፍትዌርን በመጠቀም በፕሮግራም የተቀየሰ ሲሆን ቀስቃሽ ክፍሉ ማንኛውም ድር ፣ iOS ወይም የ Android መተግበሪያ ሊሆን ይችላል። እኔ ሁለት ቀላል የድር መተግበሪያዎችን ፈጠርኩ ፣ አንደኛው በ Laravel ውስጥ እና ሌላኛው በምሳሌ ኤችቲኤምኤል እና ጃቫስክሪፕት ውስጥ።

የኖድኤምሲዩ ቦርድ በፒንዎቹ ላይ እስከ 12mA ድረስ ደህንነቱ በተጠበቀ ሁኔታ መሥራት ስለሚችል ፣ ጫጫታው በ NPN ትራንዚስተር በኩል ተገናኝቷል። እኔ 2N2222 ን ተጠቅሜአለሁ ምክንያቱም ብዙ በዙሪያቸው አኖራለሁ ግን መርሆው ከማንኛውም የ NPN ትራንዚስተር ጋር ተመሳሳይ እንደሚሆን እርግጠኛ ነኝ።

ወረዳውን ለማገናኘት ፣ ትራንዚስተሩን ሰብሳቢውን በቦርዱ ላይ ካለው የቪን ፒን ጋር ያገናኙ። ጩኸቱ በ 5 ቮ ይሠራል እና መሣሪያውን ከዩኤስቢ ኃይል ስለምንወስድ ፣ ይህ ፒን በቦርዱ ላይ ካለው የ 3.3 ቪ መቆጣጠሪያ በፊት ይሰጠናል።

በመቀጠልም በትራንዚስተሩ አምሳያ ላይ የጩኸቱን አወንታዊ ጎን ፣ እና የቦዘሩን አሉታዊ ፒን በቦርዱ ላይ ካሉ ከማንኛውም የምድር ካስማዎች ጋር ያገናኙ። እኔ ፒን 2 ን ተጠቅሜያለሁ ፣ ግን በፒን 9 ፣ 25 ወይም 29 ላይም ሊያገናኙት ይችላሉ።

የ “ትራንዚስተሩ” መሠረት በአርዲኖ ሶፍትዌር ላይ ከጂፒዮ 4 ጋር ከሚዛመደው ፒን D2 ጋር ተገናኝቷል። በዚህ ቅንብር ፣ ትራንዚስተሩ በእያንዳንዱ ክስተት ላይ ጫጫታውን በማብራት እንደ ማብሪያ / ማጥፊያ ሆኖ ይሠራል። አንዳንድ የማስጠንቀቂያ መሣሪያ እየሰሩ ከሆነ እንደ አምፖሎች ፣ ማሽኖች ወይም ሳይረን ያሉ ማንኛውንም ዋና መሣሪያዎችን መንዳት እንዲችሉ ከጩኸት ፈላጊው ይልቅ ቅብብልን በተመሳሳይ መንገድ ማገናኘት ይችላሉ።

ደረጃ 2 - የድር መተግበሪያዎችን ያዘጋጁ

የድር መተግበሪያዎችን ያዘጋጁ
የድር መተግበሪያዎችን ያዘጋጁ
የድር መተግበሪያዎችን ያዘጋጁ
የድር መተግበሪያዎችን ያዘጋጁ
የድር መተግበሪያዎችን ያዘጋጁ
የድር መተግበሪያዎችን ያዘጋጁ

ለመሣሪያው ቀስቅሴ እና የእውነተኛ ጊዜ ክፍል የ Google ን Firebase Realtime Database እንጠቀማለን። እሱ በሚጠቀምባቸው በእያንዳንዱ የመሣሪያ ስርዓቶች መካከል የእውነተኛ ጊዜ የውሂብ ማመሳሰልን የሚያቀርብ በ Google የተሰራ ይህ አስደናቂ የ NoSQL የደመና የመረጃ ቋት።

በመጀመሪያ በመረጡት ስም ፕሮጀክቱን ይፍጠሩ። አንዴ ከተፈጠረ በኋላ “ቆጠራ” የተባለ አንድ ነጠላ መስቀለኛ መንገድ ይፍጠሩ እና 0. ይህ ከሆነ ወደፊት ልንከተለው የምንፈልገው የእኛ የመጀመሪያ ቆጠራ ይሆናል።

የላራቬል ትግበራ “firebase-php” ጥቅል ከ Kreait ይጠቀማል ፣ እና ከታች ተያይ linkedል። “አቀናባሪ kreait/firebase-php” ን በማሄድ ጥቅሉን ይጫኑ። መጫኑ ከተጠናቀቀ በኋላ ድርጊቱ የሚከሰትበትን ተቆጣጣሪ መፍጠር አለብን። ዘዴውን “አዘምን” ብዬ ሰይሜዋለሁ እና በ POST እርምጃ ላይ በመንገዶቹ ላይ አገናኘሁት።

የ Firebase ምሳሌን ለማምጣት ከእርስዎ Firebase ኮንሶል ማውረድ ያለብዎት የ json ፋይል ያስፈልግዎታል። ይህንን ፋይል በእርስዎ ላራቬል ፕሮጀክት ሥር ውስጥ ያስቀምጡ እና firebase.json ብለው ይሰይሙት። የ firebase ምሳሌን በሚሰበስብበት ጊዜ ፣ በ ‹Credentials› ዘዴ በመጠቀም የዚህን ፋይል ዱካ ማቅረብ አለብን።

የእሳት ቃጠሎን ምሳሌ ካገኘን በኋላ ፣ ወደ ዳታቤዙ እና ቀደም ብለን ወደፈጠርነው መስቀለኛ መንገድ ማጣቀሻ ማግኘት አለብን። በእያንዳንዱ እርምጃ ፣ የአሁኑን የመስቀለኛ ዋጋ እናገኛለን ፣ በአንዱ ጨምረን ወደ ዳታቤዝ ከተመለስን እናስቀምጣለን። ይህ እኛ ማሳወቅ ያለብንን የእኛን ክስተቶች ይከታተላል።

የቀረበውን የእሳት ቃጠሎ ቤተ -መጽሐፍትን በመጠቀም በቀላል ኤችቲኤምኤል እና በጃቫስክሪፕት ተመሳሳይ ነገር ማግኘት ይቻላል። በእሱ መጀመሪያ እኛ ከ Firebase ኮንሶል ተገቢውን ቅንጅቶች ጋር የውቅረት ድርድርን መስጠት እና መተግበሪያውን ማስጀመር አለብን። አንዴ ከተነሳ ፣ የክስተቱን ቆጠራዎች የምናከማችበትን እና ማንኛውንም እሴት ለውጥ ለማምጣት አድማጭ የሚያያይዙበትን መስቀለኛ መንገድ ማጣቀሻ እናገኛለን።

በተጨማሪም ፣ እንደ ላራቬል ምሳሌ ውስጥ ቅጹን ከማስገባት ይልቅ አሁን በአዝራሩ ጠቅታ እየተጠራ ፣ ቆጠራውን ያዘምናል እና የዘመነውን እሴት ወደ ዳታቤዝ ይጽፋል።

ደረጃ 3 - የ NodeMCU ቦርድ ያቅዱ

የ NodeMCU ቦርድ ፕሮግራም ያድርጉ
የ NodeMCU ቦርድ ፕሮግራም ያድርጉ
የ NodeMCU ቦርድ ፕሮግራም ያድርጉ
የ NodeMCU ቦርድ ፕሮግራም ያድርጉ
የ NodeMCU ቦርድ ፕሮግራም ያድርጉ
የ NodeMCU ቦርድ ፕሮግራም ያድርጉ

NodeMCU ን ፕሮግራም ለማድረግ ፣ እኔ የአርዱዲኖ ሶፍትዌርን ተጠቅሜያለሁ እና ሰሌዳውን ከጫንኩት በኋላ ሶፍትዌሩን ለመስቀል ተገቢውን ስሪት እና ወደብ መምረጥዎን አረጋገጥኩ። የእኔ ስሪት 1.0 ነው ፣ ስለሆነም ከመቀጠልዎ በፊት ከቦርድዎ ጋር ያረጋግጡ።

የአርዱኖ ኮድ የመጀመሪያ ክፍል ፣ በመሣሪያዎ ላይ ለማስተካከል የሚያስፈልጉዎትን ሁሉንም አስፈላጊ ትርጓሜዎች ያዘጋጃል። የመጀመሪያው እንደዚህ ያለ ቅንብር የ WiFi እና የእሱ የይለፍ ቃል ssid ነው ፣ ከዚያ የእሳት ቃጠሎ ዩአርኤልን እና የ firebase db ምስጢርን ማዘጋጀት አለብን። እንደ አለመታደል ሆኖ ይህ ከመረጃ ቋቱ ጋር ለመገናኘት የሚመከር መንገድ አይደለም ነገር ግን እስከ አሁን ድረስ ቤተ -መጽሐፍቱ የሚደግፈው ብቸኛው መንገድ ነው። ይህንን ምስጢር በፕሮጀክት ቅንጅቶች ፣ በአገልግሎት መለያዎች ምናሌ ውስጥ በ firebase ኮንሶል ውስጥ ማግኘት ይችላሉ።

ቀጣዩ ትርጓሜ ዝመናዎችን እና የመሣሪያውን መታወቂያ የምንፈትሽበት መንገድ ነው። ስለተመሳሳይ ክስተቶች ለማሳወቅ ብዙ መሣሪያዎች ቢኖሩን የመሣሪያው መታወቂያ ያስፈልጋል ፣ ለዝግጅቱ የትኛው መሣሪያ እንዳሳወቀን ማወቅ እና ያንን መዝግቦ መያዝ አለብን። የመጨረሻው እኛ ጫጫታውን ያገናኘንበትን ፒን ማዋቀር አለብን እና በእኛ ሁኔታ ይህ D2 ነው።

የማዋቀሩ ተግባር አብሮ የተሰራውን መሪ መሪ ፒን እና የ D2 ፒኖችን እንደ ውፅዓት ይገልፃል ፣ ምን እየተደረገ እንዳለ ለማወቅ ተከታታይ ግንኙነቱን ይጀምሩ እና ከተጠቀሰው የ WiFi አውታረ መረብ ጋር ይገናኛል። ግንኙነቱ አንዴ ከተመሰረተ ከ Firebase ጋር ግንኙነቱን ይጀምራል እና እኛ የዘገበውን የመጨረሻ ዋጋ ያገኛል። ከዚያ በተጠቀሰው ዱካ ላይ ለውጦችን ማዳመጥ ይጀምራል።

በዋናው ዑደት ውስጥ መሣሪያው ገባሪ መሆኑን ለመናገር እንድንችል በ 500 ሚሊሰከንዶች ውስጥ አብሮ የተሰራውን መሪ ለሚያብረቀርቅ ብልጭ ድርግም የሚል ጥሪ አለ። ለውጥ ሲታወቅ እና እኛ ካለው ተግባር ጋር የምናነበው የሚገኝ ውሂብ ሲኖር ፣ የአንጓው አዲሱ እሴት እየተነበበ ነው ፣ ይህ በእንዲህ እንዳለ ብዙ ክስተቶች ሊኖሩ ስለሚችሉ እና ለእያንዳንዱ ጊዜ ቢፕ ስለሚዘጋጅ ልዩነቱ ይሰላል የልዩነት።

ለምሳሌ በመጨረሻ ሪፖርት በተደረገው እሴት እና በአዲሱ እሴት መካከል ያለው ልዩነት 4 ከሆነ 4 አዲስ ግዢዎች መፈጸማቸውን ለማሳወቅ 4 ቢፕስ ይፈጠራል። የ ‹ቢፕ› ተግባር ለተወሰነ ጊዜ በ buzzer በኩል የተወሰነ ድግግሞሽ ለማጫወት አብሮ የተሰራውን በድምፅ ተግባር ይጠቀማል።

ጩኸቶቹ ከተመረቱ በኋላ አዲሱ እሴት ለተጠቀሰው መሣሪያ ይዘመናል እና ዥረቱ እንደገና ይጀመራል። በአሁኑ ጊዜ በአርዱዲኖ የእሳት ማእከል ቤተ -መጽሐፍት ላይ ክፍት የሆነ ጉዳይ አለ እኛ እራሳችንን እራሳችንን ካስቀመጥን በኋላ ዥረቱ በራስ -ሰር አይቀጥልም ስለዚህ እንደገና ማስጀመር አለብን።

ደረጃ 4 በመሣሪያዎ ይደሰቱ

በመሣሪያዎ ይደሰቱ!
በመሣሪያዎ ይደሰቱ!

እኔ የተጠቀምኩት አጠቃላይ ኮድ ከፕሮጀክቱ መርሃግብር አገናኝ ጋር ከዚህ በታች በተገናኘው በ GitHub መለያዬ ላይ ይገኛል።

ምንጭ ኮድ

ንድፍታዊ

ለብዙ የተለያዩ ሁኔታዎች እና ክስተቶች ለመስራት ኮዱ በቀላሉ ሊፀድቅ ይችላል እና ከእሱ ጋር በመጫወት ብዙ ደስታ እንደሚኖርዎት እርግጠኛ ነኝ።

ለእኔ ይህ በጣም አስደሳች ግንባታ ነበር እና በእሱ ላይ ብዙ ለመማር ችዬ ነበር እናም ለዚህም በእውነት ደስተኛ ነኝ። በፕሮጀክትዎ ላይ ሊረዳዎት ይችላል ብዬ ተስፋ አደርጋለሁ ፣ ነገር ግን ከየትኛውም ክፍል ጋር ተጣብቀው ከተገኙ ወይም ተጨማሪ ማብራሪያ ከፈለጉ ፣ እባክዎን በአስተያየቶቹ ውስጥ ያሳውቁኝ እና እርስዎን ለመርዳት የተቻለኝን ሁሉ አደርጋለሁ።

ፕሮጀክቱን ከወደዱ እባክዎን ለዩቲዩብ ጣቢያዬ ይመዝገቡ-

ኮዱን ቅመሱ

የሚመከር: