فهرست مطالب:

بازی واکنش سریع: نسخه از راه دور: 5 مرحله (همراه با تصاویر)
بازی واکنش سریع: نسخه از راه دور: 5 مرحله (همراه با تصاویر)

تصویری: بازی واکنش سریع: نسخه از راه دور: 5 مرحله (همراه با تصاویر)

تصویری: بازی واکنش سریع: نسخه از راه دور: 5 مرحله (همراه با تصاویر)
تصویری: گوز زدن پریانکا چوپرا هنرپیشه بالیوود در یکی از برنامه های لایف تلویزیونی |C&C 2024, نوامبر
Anonim
بازی واکنش سریع: نسخه از راه دور
بازی واکنش سریع: نسخه از راه دور

سلام. این دستورالعمل نحوه ایجاد یک بازی است که هم زمان واکنش شما و هم حس فاصله را آزمایش می کند. این پروژه بر اساس یک پروژه قدیمی است که من با مشارکت دو بازیکن در مسابقه برای مشاهده زمان واکنش سریعتر با کلیک روی دکمه ای که چراغ سبز شد ، انجام شد. این دستگاه دارای هدف مشابهی است ، مگر اینکه تک نفره باشد و بجای اینکه چراغ خاموش شود ، به بازیکن فرصت داده می شود تا دست خود را در فاصله خاصی از سنسور فاصله قرار دهد.

مانند همه پروژه های آردوینو ، این بازی به قطعات الکتریکی متعددی در مدار آردوینو نیاز دارد. اجزای اصلی ، به غیر از سیم کشی و خود آردوینو ، شامل نان برد ، سرو موتور ، صفحه LCD ، LED RGB و سنسور فاصله است.

با استفاده از https://abra-electronics.com ، قیمت بدون سیم و آردوینو 32.12 دلار کانادا است.

مرحله 1: مرحله 1: سنسور فاصله

مرحله 1: سنسور فاصله
مرحله 1: سنسور فاصله

اولین قدم این است که سنسور فاصله اولتراسونیک را روی نان برد نصب کرده و آن را به آردوینو متصل کنید. موقعیت دقیق سنسور در واقع اهمیتی ندارد ، اما در حالت ایده آل نزدیک به یک لبه است به طوری که برای سایر اجزاء همانطور که در تصویر بالا نشان داده شده است فضا وجود دارد. چهار پین روی سنسور وجود دارد. GND ، VCC ، TRIG و ECHO. GND و VCC به ترتیب در زمین و ریل برق متصل می شوند و در دو پین دیگر به دو پین در آردوینو وصل می شوند. دو پین مورد استفاده من 12 عدد برای ECHO و 11 پین TRIG بود. از دو سیم دیگر برای تغذیه ریل برق استفاده کنید و با اتصال ریل قدرت به پین 5 ولت و ریل زمین به پین GND ، خط زمین را زمین کنید.

مرحله 2: مرحله 2: موتور سروو

مرحله 2: موتور سروو
مرحله 2: موتور سروو

مرحله بعدی راه اندازی سروو موتور است. در این پروژه ، سرو موتور به عنوان یک زمان سنج عمل می کند. از 1 درجه شروع می شود و در مدت زمانی که کاربر باید دستان خود را فاصله دهد ، به 180 درجه می چرخد. من از 2 ثانیه برای زمانی که کاربر می فهمد چقدر باید فاصله داشته باشد استفاده کردم ، بنابراین سروو در مدت 2 ثانیه 179 درجه می چرخد و در فواصل کوتاه می چرخد. سرو موتور دارای سه سیم است. معمولاً زرد ، قرمز و قهوه ای است. قرمز رنگ وارد ریل برق می شود که قبلاً به 5V متصل شده است ، و قهوه ای به ریل زمینی که قبلاً به GND وصل شده است می رود. سیم نهایی به پین آردوینو متصل می شود. من پین شماره 9 را برای این مورد انتخاب کردم. سپس ، شما نیاز به یک خازن دارید که همان ریل را که سیم سروو موتور و سیم زمین را به آن متصل کرده است ، وصل کنید ، همانطور که در تصویر بالا مشاهده می کنید.

مرحله 3: مرحله 3: LED RGB

مرحله 3: LED RGB
مرحله 3: LED RGB

عملکرد LED در این حالت این است که به عنوان مقیاسی برای نمره عمل کند. وقتی نمره بازیکن حدود 0 باشد ، LED سفید می شود و اگر امتیاز بازیکن پایین بیاید قرمز می شود و اگر امتیاز بازیکن بالا رود سبز می شود. این LED دارای چهار پایه است. یک پای قرمز روشن ، یک پای آبی روشن ، یک پای سبز روشن و یک کاتد مشترک بین سه پایه دیگر. کاتد معمولی ، طولانی ترین پا ، به ریل برق متصل شده است ، بنابراین 5 ولت دریافت می کند. مقاومتهای 330 اهم را به سه پایه رنگی دیگر وصل کنید و انتهای دیگر آن مقاومتها را به پین های دیجیتالی PWM در آردوینو وصل کنید. پین های دیجیتالی 3 ، 5 و 6 برای پاهای قرمز ، سبز و آبی به ترتیب استفاده کردم.

مرحله 4: مرحله 4: LCD

مرحله 4: LCD
مرحله 4: LCD

جزء نهایی LCD است که مخفف نمایشگر کریستال مایع است. هدف از این کار این است که به بازیکن نمره فعلی خود و همچنین فاصله ای که برای فاصله گرفتن دست از سنسور نیاز دارد ، بگوید. در اینجا چهار پین وجود دارد. GND ، VCC ، SDA و SCL. GND و VCC به ترتیب در زمین و ریل های برق ورق نورد سیم کشی می شوند. پین SDA باید به پین آنالوگ A4 متصل شود و پین SCL باید به پین آنالوگ A5 متصل شود. برخلاف سایر اجزاء ، باید پین های SDA و SCL را به A4 و A5 وصل کنید.

مرحله 5: مرحله 5: کد

اکنون که همه اجزا را سیم کشی کرده ایم ، می توانیم کد را بنویسیم. اولین قسمت کد وارد کردن کتابخانه های لازم و اعلام متغیرهای ما و قطعاتی است که قطعات به آنها وصل شده است. ما باید کتابخانه های Wire ، LiquidCrystal_I2C و Servo را برای این کد وارد کنیم.

#عبارتند از

#عبارتند از

#عبارتند از

Servo myServo؛

int const trigPin = 11؛

int const echoPin = 12؛

int redPin = 3 ؛

int greenPin = 5؛

int bluePin = 6؛

نمره int = 0 ؛

int tim = 500؛

جریان فعلی = تصادفی (8 ، 16) ؛ // مقدار تصادفی جایی که کاربر باید دست خود را از سنسور فاصله دهد

LiquidCrystal_I2C ال سی دی (0x27 ، 16 ، 2) ؛ // تنظیم LCD

اکنون باید از void setup () برای اعلام انواع پین خود و تنظیم سایر اجزای ضروری استفاده کنیم.

void setup () {myServo.attach (9)؛ Serial.begin (9600)؛ pinMode (trigPin ، OUTPUT) ؛ pinMode (echoPin ، INPUT) ؛ pinMode pinMode (redPin ، OUTPUT) ؛ pinMode (greenPin ، OUTPUT) ؛ pinMode (bluePin ، OUTPUT) ؛ lcd.init ()؛ lcd.lightlight ()؛ lcd.begin (16 ، 2) ؛ lcd.clear ()؛ // تنظیم LCD}

اکنون باید کد LED RGB را با استفاده از یک تابع و PWM تنظیم کنیم:

void setColor (قرمز قرمز ، سبز سبز ، آبی آبی) {

قرمز = 255 - قرمز ؛

سبز = 255 - سبز ؛

آبی = 255 - آبی ؛

analogWrite (redPin ، قرمز) ؛

analogWrite (greenPin ، سبز) ؛

analogWrite (bluePin ، آبی) ؛

}

حالا باید حلقه void () را اضافه کنیم. در اینجا ، ما قصد داریم اعداد صحیح تصادفی تولید کرده و از یک سری دستورات if برای کنترل بازی برای بازیکن استفاده کنیم. متغیر فعلی ، که در بالا تنظیم شده است ، برای فاصله فعلی است که بازیکن باید از سنسور فاصله بگیرد.

از آنجا که کد موجود در حلقه void () بسیار طولانی است ، من پیوندی را به سندی که دارای آن کد است می چسبانم:

docs.google.com/document/d/1DufS0wuX0N6gpv…

در نهایت ، ما باید محاسبات واقعی را برای تبدیل مقادیر سنسور فاصله اولتراسونیک به اینچ انجام دهیم. سنسور فاصله مافوق صوت به طور مستقیم فاصله را اندازه گیری نمی کند. این صدا را آزاد می کند و زمان لازم برای دریافت سنسور را برای بازگرداندن صدا از هر جسمی که از آن خارج می شود ، ضبط می کند.

میکرو ثانیه طولانی Toonch (میکرو ثانیه طولانی) {

ریز ثانیه بازگشت / 74 /2 ؛

}

حالا آردوینو سیمی را با کد به رایانه وصل می کنیم ، پورت ها را راه اندازی می کنیم و آن را اجرا می کنیم! دو حالت برای این بازی وجود دارد. در هر صورت فقط می توانید از صفحه LCD ، سروو موتور ، سنسور و LED RGB استفاده کنید و فقط فاصله ای را که باید از سنسور فاصله بگیرید ، که حالت سخت تر است ، می دانید. حالت راحت تر شامل استفاده از مانیتور سریال در Tools> Serial Monitor است که هر ثانیه شما را در مورد فاصله شما با سنسور به روز می کند ، بنابراین می توانید تنظیمات لازم را انجام دهید.

ممنون که خواندید!

توصیه شده: