ዝርዝር ሁኔታ:

ለሃሎዊን አስፈሪ ዱባ ከረሜላ ማሽን -5 ደረጃዎች
ለሃሎዊን አስፈሪ ዱባ ከረሜላ ማሽን -5 ደረጃዎች

ቪዲዮ: ለሃሎዊን አስፈሪ ዱባ ከረሜላ ማሽን -5 ደረጃዎች

ቪዲዮ: ለሃሎዊን አስፈሪ ዱባ ከረሜላ ማሽን -5 ደረጃዎች
ቪዲዮ: ፈገግታ የሃሎዊን ዱባ | ዱባ ከረሜላ ያለ ምድጃ እንዴት እንደሚሠራ። 2024, ሀምሌ
Anonim
Image
Image

ሰላም ለሁላችሁ! መልካም ሃሎዊን !! አንድ ሰው በሚመጣበት ጊዜ ሙዚቃን የሚጫወት እና ከረሜላ የሚተፋበት ዱባ ፋኖስ ገንብተናል።

ደረጃ 1 በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች

በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች
በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች
በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች
በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች

የሃርድዌር ክፍሎች

  • አርዱዲኖ UNO / Seeeduino V4.2
  • ቤዝ ጋሻ V2
  • ግሮቭ - የፒአር እንቅስቃሴ ዳሳሽ
  • ግሮቭ - MP3 v2.0
  • ግሮቭ - WS2813 RGB LED Strip Waterproof - 60 LED/m - 1m
  • ኢማክስ 12 ግ ES08MD ከፍተኛ ስሜታዊ servo

የሶፍትዌር መተግበሪያዎች እና የመስመር ላይ አገልግሎቶች

አርዱዲኖ አይዲኢ

ደረጃ 2 - ታሪክ

ታሪክ
ታሪክ
ታሪክ
ታሪክ
ታሪክ
ታሪክ

ሃሎዊን እየመጣ ነው ፣ የዱባ መብራቶች አስፈላጊ ናቸው። እኛ እንጠቀምበታለን Seeeduino እና PIR Motion Senser የዱባ ፋኖስ ገንብቷል ፣ የሆነ ሰው ሲመጣ ሙዚቃ ይጫወታል እና ከረሜላዎችን ይተፋል።

መካኒካል መዋቅር

** ደረጃ 1: ** አንዳንድ ከረሜላዎችን እና ዱባን ይግዙ ፣ ሴዱዲኖን እናስቀምጠው ዘንድ ከዱባው በስተጀርባ ጉድጓድ ቆፍሩ።

** ደረጃ 2: ** እንደዚህ ያለ ሳጥን ይቁረጡ ፣ እና በዱባ አፍ ላይ ያስተካክሉት።

** Setp 3: ** ወደ servo ሞተር አንድ ክንድ ይጫኑ። በዱባው ውስጥ የ servo ሞተርን ለመጠገን ፣ መያዣን እንደ መያዣ እንጠቀማለን።

** ደረጃ 4: ** የ servo ሞተር ክንድ ሲነሳ በሳጥኑ ውስጥ ከረሜላዎች ከዱባው አፍ ውስጥ መትፋታቸውን ያረጋግጡ።

ደረጃ 3 የሃርድዌር ግንኙነት

** ደረጃ 1: ** በኤስዲ ካርድ ቁራጭ ውስጥ MP3 የሚል አቃፊ ይስሩ ፣ የ mp3 ፋይል ይቅዱለት ፣ 0001.mp3 ን ይሰይሙ። በ 3.5 ሚሜ ወደብ በኩል ድምጽ ማጉያውን ወደ MP3 ግሮቭ ያገናኙ እና በመሰረት ጋሻ ላይ MP3 ግሮቭን ወደብ D2 ያገናኙ።

** ደረጃ 2: ** PIR Motion Sensor Grove ን ወደ Base Shield's D4 ወደብ ያገናኙ ፣ እና የ NeoPixel strip ን ወደ Base Shield D5 ወደብ ያገናኙ።

** ደረጃ 3: ** Servo Grove ን ከ Base Shield ዲጂታል ፒን 9 ጋር ያገናኙ ፣ ስለዚህ የ DuPont መስመሮችን መጠቀም ያስፈልገን ይሆናል።

** ደረጃ 4: ** ቤዝ ጋሻን ወደ Seeeduino ያያይዙ።

** ደረጃ 5: ** ፕሮግራሙን ወደ Seeeduino ለማውረድ ከኮምፒዩተር ጋር ለመገናኘት የዩኤስቢ ገመድ እንጠቀማለን። ከወረዱ በኋላ በዱባ ውስጥ የኃይል ገመድ ብቻ መጠቀም እንችላለን።

ደረጃ 4 የሶፍትዌር ፕሮግራም

** ደረጃ 1: ** ቤተ -ፍርግሞችን ይጫኑ

ለተሻለ ውጤት ፣ እኛ ፍሪተቶስ የተባለ ስርዓተ ክወና እንጠቀማለን ፣ ከዚህ ማውረድ ይችላል።

በተጨማሪም ፣ ይህ ፕሮጀክት የሚከተሉትን ቤተ -መጻሕፍት ይፈልጋል ፣ ያውርዷቸው እና ይጫኑዋቸው

  • ግሮቭ - MP3 v2.0
  • Adafruit NeoPixel
  • Adafruit TicoServo

ወይም MP3 Grove ን ለመጠቀም በቀላሉ በፕሮጀክቱ አቃፊ ውስጥ MP3.h ን ማካተት ይችላሉ።

** ደረጃ 2 ** ፕሮግራሙን ይገንቡ እና ይስቀሉ

*ማሳሰቢያ -ማርኮ MAX_BRIGHTNESS የ NeoPixel ከፍተኛውን ብሩህነት ይቆጣጠራል ፣ የኃይል ፍጆታን ለመቀነስ የሱን ብሩህነት ይቀንሱ።

ከዚህ ቀደም Seeeduino ላይ ስርዓተ ክወና ካልተጠቀሙ ፕሮግራሙን ለመረዳት ከባድ ሊሆን ይችላል ፣ የሚከተለው ጽሑፍ በቀላሉ ያደርገዋል።

በማዋቀር () ዘዴ ፣ ተከታታይን ፣ የ MP3 ግሮቭ እና ሰርቮ ሞተርን በመደበኛነት አስጀምረናል ፣ እና ሴማፎር ብለን የምንጠራውን ተለዋዋጭ ፈጠርን ፣ አንድ ሰው መጥቶ ወይም እንዳልመጣ ለማመልከት ያገለገለ እንደ ባንዲራ ተለዋዋጭ አድርገው ሊወስዱት ይችላሉ።

vSemaphoreCreateBinary (xPIRBinarySemaphore);

ከዚያ 3 ተግባሮችን ፈጥረናል ፣ አብረው መሮጥ ይችላሉ። ግን የዚያ ጊዜ ቅድሚያ የሚሰጣቸው ነገሮች አንድ ላይሆኑ ይችላሉ።

s1 = xTaskCreate (vFadingLEDsTask ፣ NULL ፣ configMINIMAL_STACK_SIZE ፣ NULL ፣ 1 ፣ NULL) ፤

s2 = xTaskCreate (vScaningPIRTask ፣ NULL ፣ configMINIMAL_STACK_SIZE ፣ NULL ፣ 1 ፣ NULL) ፤ s3 = xTaskCreate (vHandlePIRTask ፣ NULL ፣ configMINIMAL_STACK_SIZE ፣ NULL ፣ 2 ፣ NULL) ፤

ሴማፎርን እና ተግባሮች በትክክል ከተጀመሩ በኋላ የ vTaskSetartScheduler () ዘዴ መላውን FreeRTOS ይጀምራል።

ከሆነ (xPIRBinarySemaphore == NULL || s1! = pdPASS || s2! = pdPASS || s3! = pdPASS)

{ለ (;;;); } vTaskStartScheduler ();

በ FreeRTOS ውስጥ ጥቅም ላይ የዋለው የ loop () ዘዴ ነርቭ። አሁን ቀሪው ቀላል ነው ፣ vFadingLEDsTask ተግባር እየደበዘዘ ተለዋዋጭ ቀለም LED እና vScanPIRTask ተግባር ቅኝት PIR Motion Sensor 'pin ሁል ጊዜ። PIR Motion Sensor የሆነ ሰው እየመጣ መሆኑን ሲያውቅ ባንዲራውን ያዘጋጃል ፣ ከዚያ የ vHandlePIRTask ተግባር መሮጥ ይጀምራል። የ vHandlePIRTask ተግባር ቅድሚያ 2 ስለሆነ ፣ በሚሠራበት ጊዜ ፣ ሌሎች ሁለት ቀሪ ሥራዎች ይታገዳሉ።

የሚከተሉ ጥሪዎች ባንዲራ ለማቀናበር ወይም ዳግም ለማቀናበር ያገለግላሉ።

xSemaphoreGive (xPIRBinarySemaphore);

xSemaphoreTake (xPIRBinarySemaphore ፣ portMAX_DELAY);

ደረጃ 5 - ክወና

ተናጋሪውን ፣ Seeeduino እና Groves በዱባው መብራት ውስጥ ያስገቡ እና ያብሩት። አሁን አንድ ሰው ወደ እሱ እስኪመጣ መጠበቅ ይችላሉ ፣ ተንኮል ወይም ሕክምና:-)።

የሃሎዊን ዱባ ብርሃንን ጠቅ በማድረግ ቪዲዮውን ይመልከቱ። (https://www.youtube.com/embed/CFjuWXOIUN4)

የሚመከር: