فهرست مطالب:

دستگاه آب نبات کدو تنبل ترسناک برای هالووین: 5 مرحله
دستگاه آب نبات کدو تنبل ترسناک برای هالووین: 5 مرحله

تصویری: دستگاه آب نبات کدو تنبل ترسناک برای هالووین: 5 مرحله

تصویری: دستگاه آب نبات کدو تنبل ترسناک برای هالووین: 5 مرحله
تصویری: هر کی دست نزنه ... 😂 #چالش #دنس #دنسر 2024, نوامبر
Anonim
Image
Image

سلام به همه! هالووین مبارک !! ما یک فانوس کدو تنبل ساختیم که وقتی کسی به آن نزدیک می شود ، موسیقی پخش می کند و آب نبات را تف می کند.

مرحله 1: موارد مورد استفاده در این پروژه

موارد مورد استفاده در این پروژه
موارد مورد استفاده در این پروژه
موارد مورد استفاده در این پروژه
موارد مورد استفاده در این پروژه

اجزای سخت افزاری

  • Arduino UNO / Seeeduino V4.2
  • Base Shield V2
  • Grove - PIR Motion Sensor
  • Grove - MP3 v2.0
  • Grove - WS2813 RGB LED Strip ضد آب - 60 LED/m - 1m
  • سروهای EMax 12g ES08MD high Sensitive

برنامه های نرم افزاری و خدمات آنلاین

آردوینو IDE

مرحله 2: داستان

داستان
داستان
داستان
داستان
داستان
داستان

هالووین در راه است ، فانوس های کدو تنبل ضروری هستند. ما از Seeeduino استفاده می کنیم و PIR Motion Senser یک فانوس کدو ساخته است ، وقتی کسی به آن نزدیک می شود ، موسیقی پخش می کند و آب نبات تف می کند.

ساختار مکانیکی

** مرحله 1: ** مقداری آب نبات و کدو بخرید ، یک سوراخ پشت کدو حفر کنید تا بتوانیم Seeeduino را روی آن قرار دهیم.

** مرحله 2: ** جعبه ای مانند این را برش دهید و آن را به دهان کدو تنبل محکم کنید.

** تنظیم 3: ** بازویی را روی سروو موتور نصب کنید. برای تعمیر موتور سروو در داخل کدو ، از قوطی به عنوان نگهدارنده استفاده می کنیم.

** مرحله 4: ** مطمئن شوید که بازوی سرو موتور بالا می آید ، آب نبات داخل جعبه از دهان کدو خارج می شود.

مرحله 3: اتصال سخت افزار

** مرحله 1: ** یک پوشه به نام MP3 در یک قطعه کارت SD ایجاد کنید ، یک فایل mp3 را در آن کپی کنید ، نام آن را 0001.mp3 بگذارید. یک بلندگو را از طریق پورت 3.5 میلی متری به MP3 Grove وصل کنید و MP3 Grove را به پورت D2 در Base Shield وصل کنید.

** مرحله 2: ** PIR Motion Sensor Grove را به پورت D4 Base Shield وصل کنید و نوار NeoPixel را به پورت D5 Base Shield وصل کنید.

** مرحله 3: ** Servo Grove را به پین دیجیتال 9 Base Shield وصل کنید ، بنابراین ممکن است لازم باشد از خطوط DuPont استفاده کنیم.

** مرحله 4: ** Base Shield را به Seeeduino وصل کنید.

** مرحله 5: ** برای بارگیری برنامه در Seeeduino ، از کابل USB برای اتصال به کامپیوتر استفاده می کنیم. پس از بارگیری ، فقط می توانیم از کابل برق داخل کدو تنبل استفاده کنیم.

مرحله 4: برنامه نویسی نرم افزار

** مرحله 1: ** کتابخانه ها را نصب کنید

برای تأثیر بهتر ، ما از یک سیستم عامل به نام FreeRTOS استفاده می کنیم ، می توان آن را از اینجا بارگیری کرد.

علاوه بر این ، این پروژه به کتابخانه های زیر نیاز دارد ، آنها را بارگیری و نصب کنید:

  • Grove - MP3 v2.0
  • Adafruit NeoPixel
  • Adafruit TicoServo

یا می توانید به سادگی MP3.h را در پوشه پروژه قرار دهید تا از MP3 Grove استفاده کنید.

** مرحله 2: ** برنامه را بسازید و بارگذاری کنید

*توجه: Marco MAX_BRIGHTNESS حداکثر روشنایی NeoPixel را کنترل می کند ، برای کاهش مصرف برق ، روشنایی آن را کاهش دهید.*

اگر قبلاً از سیستم عامل در Seeeduino استفاده نکرده باشید ، درک این برنامه دشوار است ، مقاله زیر آن را به سادگی بیان می کند.

در روش setup () ، Serial ، MP3 Grove و Servo Motor را به طور عادی راه اندازی کردیم و متغیری ایجاد کردیم که ما آن را سمافور می نامیم ، می توانید آن را به عنوان یک متغیر پرچم در نظر بگیرید که برای نشان دادن این که کسی آمده است یا نه ، در نظر گرفته می شود.

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

پس از بررسی semaphore و انجام وظایف به درستی ، روش vTaskSetartScheduler () کل FreeRTOS را راه اندازی می کند.

if (xPIRBinarySemaphore == NULL || s1! = pdPASS || s2! = pdPASS || s3! = pdPASS)

{ برای (؛؛)؛ } vTaskStartScheduler ()؛

روش nerver حلقه () مورد استفاده در FreeRTOS. در حال حاضر بقیه ساده هستند ، کار vFadingLEDsTask محو می شود Variable Color LED و vScanPIRTask وظیفه اسکن PIR Motion Sensor 'pin را در تمام مدت انجام می دهد. هنگامی که PIR Motion Sensor تشخیص می دهد کسی در حال آمدن است ، پرچم را تنظیم می کند ، سپس کار vHandlePIRTask شروع به کار می کند. از آنجا که اولویت وظیفه vHandlePIRTask 2 است ، هنگام اجرا ، دو وظیفه دیگر باقی می ماند.

از تماسهای زیر برای تنظیم یا بازنشانی پرچم استفاده می شود.

xSemaphoreGive (xPIRBinarySemaphore) ؛

xSemaphoreTake (xPIRBinarySemaphore ، بندر MAX_DELAY) ؛

مرحله 5: عملیات

اسپیکر ، Seeeduino و Groves را داخل فانوس کدو تنبل قرار دهید و آن را روشن کنید. حالا می توانید منتظر باشید کسی به سراغش می آید ، ترفند یا درمان:-).

با کلیک روی نور کدو تنبل هالووین ، ویدیو را بررسی کنید. (https://www.youtube.com/embed/CFjuWXOIUN4)

توصیه شده: