ዝርዝር ሁኔታ:

የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ -7 ደረጃዎች
የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ -7 ደረጃዎች

ቪዲዮ: የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ -7 ደረጃዎች

ቪዲዮ: የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ -7 ደረጃዎች
ቪዲዮ: ቦርጭን ለማጥፋት የሚሰራ የአካል ብቃት እንቅስቃሴ በባለሞያ 2024, ህዳር
Anonim
የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ
የመቀመጫ ሰዓት መከታተያ እንዴት እንደሚገነባ

ይህ ፕሮጀክት አንድን ሰው ለመለየት እና ለመከታተል የዚዮ ኪዊክ የአልትራሳውንድ ርቀት ዳሳሽ ይጠቀማል። መሣሪያው ከተቀመጠው ሰው ፊት ለፊት/ከኮምፒውተሩ ፊት ለፊት በማያ ገጽ/ሞኒተር አናት ላይ ይቀመጣል።

ፕሮጀክቱ በሰዓታት/ደቂቃዎች ውስጥ ምን ያህል እንደተቀመጡ ይከታተላል። ከፍተኛው ‹ቁጭ› ጊዜ ከተደረሰ በኋላ ቆመው እንዲዞሩ ያስጠነቅቃቸዋል።

ደረጃ 1: መርሃግብር

ንድፍታዊ
ንድፍታዊ

ደረጃ 2: ማዋቀር

አዘገጃጀት
አዘገጃጀት

ይህንን ፕሮጀክት ለመገንባት የሚከተሉትን ሞጁሎች ያስፈልግዎታል

  • ዙኒኖ መ ኡኖ ልማት ቦርድ
  • ዚዮ ኪዊክ አልትራሳውንድ የርቀት ዳሳሽ
  • ዚዮ ኪዊክ 0.91”OLED ማሳያ
  • ኪዊክ ኬብሎች (200 ሚሜ)
  • የማይክሮ ዩኤስቢ ገመድ

ደረጃ 3 ዴዚ ሰንሰለት ሁሉንም ሞጁሎች አንድ ላይ

ዴዚ ሰንሰለት ሁሉም ሞጁሎች አንድ ላይ
ዴዚ ሰንሰለት ሁሉም ሞጁሎች አንድ ላይ

ደረጃ 4: ውቅር እና ኮድ

የሚከተሉትን ቤተመጽሐፍት ወደ የእርስዎ አርዱዲኖ አይዲኢ ያውርዱ እና ይጫኑ ፦

  • Adafruit GFX ቤተ -መጽሐፍት
  • Adafruit SSD1306 ቤተ -መጽሐፍት

ሙሉውን የፕሮጀክት ኮድ ወደ ቦርድዎ ይስቀሉ። የእርስዎን Uno ወደ ኮምፒውተር ይሰኩት። አርዱዲኖ አይዲኢን በመጠቀም ኮዱን ያውርዱ እና ያብሩ።

እንደ አማራጭ ኮዱን ከ Github ገፃችን ማውረድ ይችላሉ።

ደረጃ 5 የኮድ ማብራሪያ

ከጅምሩ አነፍናፊው በ 75 ሴ.ሜ ርቀት ውስጥ የተቀመጠ የሰው መኖርን ይለያል። በዚህ ጊዜ ሁሉም ቆጣሪዎች ወደ ዜሮ ይነሳሉ።

uint16_t time_sit1 = 0; uint16_t time_sit2 = 0; uint16_t time_leave1 = 0; uint16_t time_leave2 = 0; uint16_t lim = 75; // የርቀት ክልል ከአነፍናፊ ወደ መቀመጫ ወንበር 16_t maxsit_time = 7200000; // በ ms ውስጥ ከፍተኛውን የመቀመጫ ጊዜ ያዘጋጁ

በ loop ተግባር ውስጥ ፣ አነፍናፊው መጀመሪያ ለሰው መኖር ይገነዘባል። ምንም ነገር በምርመራ ክልል ውስጥ ከሌለ ፣ ‹ትተው ቆጣሪ› ማንም የማይገኝበትን ጊዜ መከታተል ይጀምራል።

ከሆነ (ርቀት*0.1 <ሊም) {// አንድ ሰው በማወቂያ ክልል distance_H = Wire.read () ውስጥ መሆኑን ካወቀ; distance_L = Wire.read (); ርቀት = (uint16_t) ርቀት_ኤች << 8; ርቀት = ርቀት | distance_L; ቁጭ (); time_leave1 ++; // ማንም ሰው የማይቆጠርበትን ጊዜ ይከታተላል ();

እሱ/እሷ ከ 2 ሰዓታት በላይ ከተቀመጡ ፣ ኮዱ ሰውዬው እረፍት እንዲያደርግ መልእክት ያሳያል።

ከሆነ (time_sit2> maxsit_time) {maxsit (); time_leave1 = ሚሊስ ()/1000; time_leave1 ++; የሂሳብ ጊዜ ();

ሰውዬው እረፍት ለመውሰድ ከወሰነ ፣ የሰው መኖር ካለ ኮዱ እንደገና ይፈትሻል። ተገኝነት ካልተገኘ ፣ የተቀመጠው ቆጣሪ ወደ ዜሮ ይመለሳል እና የእረፍት ቆጣሪ ይጀምራል። አነፍናፊው ሰውዬው የሥራ ቦታውን ለቅቆ ለመውጣት ጊዜውን ይከታተላል።

ሌላ ከሆነ (ርቀት*0.1> ሊም) {// አንድ ሰው ከክልል ስሌት ጊዜ ውጭ መሆኑን (); Serial.print ("Time sit:"); Serial.print (time_sit2/1000); Serial.println ("ሰከንድ"); time_sit1 = ሚሊስ ()/1000; Serial.println ("ማንም የለም"); time_sit1 ++; መዘግየት (1000);

ደረጃ 6 - ማሳያ

ማሳያ
ማሳያ

የዚዮ ኪዊክ የአልትራሳውንድ ርቀት ዳሳሽ በኮምፒተርዎ መቆጣጠሪያ አናት ላይ ያድርጉት።

ማሳሰቢያ - ውጤቱን ሊያዛባ የሚችል ማንኛውንም ነገር በአነፍናፊው እንዳይታወቅ ከኮምፒውተሩ በላይ ማድረጉ የተሻለ ነው።

ከመሳሪያው ጋር በተያያዘው የ OLED ማሳያ ላይ የመቀመጫ ጊዜ ውጤቶችን ማየት ይችላሉ።

ደረጃ 7: እንዴት እንደሚሰራ

እንዴት እንደሚሰራ
እንዴት እንደሚሰራ
እንዴት እንደሚሰራ
እንዴት እንደሚሰራ
እንዴት እንደሚሰራ
እንዴት እንደሚሰራ

የአልትራሳውንድ የርቀት ዳሳሽ እሱ/እሷ በሴንቲሜትር ከ 75 ሴ.ሜ (ከተቆጣጣሪው እስከ መቀመጫው ባለው ርቀት) ውስጥ ከተቀመጡ የተቀመጠ ሰው ይከታተላል እና ይለያል።

ሰውዬው የተቀመጠበትን የሰዓታት ብዛት እና ከአነፍናፊው ርቀትን ይከታተላል።

እሱ/እሷ በተጠቀሰው 75 ሴ.ሜ ክልል ውስጥ ካልሆኑ አነፍናፊው ሰውዬው የተቀመጠበትን ቦታ ትቶ እንደሄደ ይገምታል። የ OLED ማያ ገጹ አንድ ሰው ከተቀመጠ በኋላ የተረፈበትን ጊዜ ያሳያል።

አነፍናፊው አንድ ሰው በቀጥታ ከ 2 ሰዓታት በላይ እንደተቀመጠ ከተከታተለ እና ካስተዋለ ማያ ገጹ/እሱ/እሷ እረፍት እንዲያደርግ መልእክት ያሳያል።

የሚመከር: