پروژه الکترونیکپروژه های آردوینوپروژه های بازی و سرگرمیپروژه های صدا

آموزش کامل ساخت پیانو با آردوینو + پروژه ضبط و پخش صدا (استفاده از تابع tone)

سلام. آموزش کامل ساخت پیانو با آردوینو + ضبط و پخش صدا در Arduino (استفاده از تابع tone) را آماده کردیم. فیلم عملکرد مدار را ببینید.

آموزش کامل ساخت پیانو با Arduino

آموزش کامل ساخت پیانو با آردوینو

در این پروژه آردوینو قصد داریم یک پیانو کوچک اما سرگرم کننده را بسازیم. این پیانو فقط با 8 دکمه کنترل میشود. از تابع tone() آردوینو برای ایجاد انواع نت های پیانو روی بلندگو استفاده می کنیم. همچنین قابلیت ضبط و پخش صدا را در آن قرار میدهیم تا بتوانیم آهنگ نواخته شده با پیانو را بشنویم.

تابع Tone() چیست ؟

Arduino یک تابع مفید دارد که می تواند برای تولید سیگنال هایی با فرکانس مختلف استفاده شود. خوب ، پس چگونه فرکانس متغیر را از Arduino دریافت می کنیم؟ اینجاست که تابع ()tone وارد می شود. tone() می تواند یک فرکانس خاص را روی یک پین خاص ایجاد کند.

tone(pin, frequency)
tone(pin, frequency, duration)

توضیح پارامتر ها :

  • pin : آن پینی که میخواهید tone در آن ایجاد شود.
  • frequency : فرکانس tone بر حسب هرتز
  • duration : مدت tone بر حسب میلی ثانیه

pin می تواند هرکدام از پین های دیجیتالی شما باشد. ما در اینجا از پین شماره 8 استفاده میکنیم. فرکانس تولید شده بستگی به اندازه تایمر در برد آردوینو شما دارد. برای آردوینو UNO و سایر برد های رایج حداقل فرکانس تولید شده 31Hz است و حداکثر فرکانس قابل تولید 65535Hz است. با این حال ما انسانها فقط فرکانسهای بین 2000 هرتز و 5000 هرتز را می شنویم.

نحوه پخش پیانو با آردوینو

اکنون می دانیم که می توانیم از عملکرد tone در آردوینو برای تولید برخی صداها استفاده کنیم ، اما چگونه می توانیم با استفاده از آن ، صدای یک نت خاص را پخش کنیم. خوشبختانه کتابخانه ای به نام “pitches.h” وجود دارد که توسط برت هاگمن نوشته شده است. این کتابخانه حاوی تمام اطلاعاتی در مورد میزان فرکانس معادل نت ها در پیانو است. انقدر این کتابخانه خوب عمل میکند که ما واقعا شگفت زده شدیم. با این کتابخانه حتی میتوانید موسیقی فیلم تایتانیک ، ماریو ، دزدان دریایی و… را نواخت.

پروژه ما تنها 8 دکمه دارد بنابراین هر دکمه می تواند تنها یک نت موسیقی خاص را پخش کند و بنابراین به طور کلی می توانیم فقط 8 نت را پخش کنیم. ما از 8 نت پر استفاده در پیانو استفاده کردیم و شما میتوانید نت ها و دکمه های بیشتری را استفاده کنید.

نت های انتخاب شده در این پروژه ، نت های C4 ، D4 ، E4 ، F4 ، G4 ، A4 ، B4 و C5 است که به ترتیب می توانند با استفاده از دکمه های 1 تا 8 پخش شوند.

توضیحات مدار پروژه

شماتیک کامل پروژه در فایل دانلود قرار داده شده است. مقدار مقاومتها از سمت چپ به ترتیب ، 10k ، 560R ، 1.5k ، 2.6k ، 3.9 ، 5.6k ، 6.8k ، 8.2k و 10k است. اگر سوئیچ DPST ندارید می توانید از کلید سوئیچ معمولی استفاده کنید. ما همه 8 دکمه را به پین آنالوگ A0 آردوینو متصل کردیم. همچنین برای هر دکمه از مقاومت متتفاوت استفاده کردیم به این ترتیب هنگامی که هر دکمه فشار داده شود، یک ولتاژ آنالوگ متفاوت به پین ​​آنالوگ ارائه می شود.

اگر میخواهید آردوینو را به صورت اصولی و پروژه محور (ساخت ربات، ارتباط با اندروید، اینترنت اشیا، برنامه نویسی حرفه ای) یاد بگیرید، حتما دوره آموزش آردوینو را مشاهده کنید.

ال سی دی به پین ​​های 8 ، 9 ، 10 ، 11 و 12 Arduino وصل می شود. بازر به پین ​​7 و سوئیچ SPDT به پین ​​6 آردوینو وصل شده است. همچنین می توانید آردوینو را از طریق جک DC به یک منبع تغذیه 9 ولت یا 12 ولت متصل کنید.

قطعات مورد نیاز

  1. برد آردوینو Uno
  2. نمایشگر LCD 16*2
  3. بازر
  4. پتانسیومتر 10k
  5. سوئیچ SPDT
  6. دکمه (8 عدد)
  7. مقاومت (10k، 560R، 1.5k، 2.6k، 3.9، 5.6k، 6.8k، 8.2k، 10k)

فیلم عملکرد مدار : کلیک کنید !

موارد موجود در فایل : شماتیک مدار ، فایل Hex ، فایل آردوینو و …

برای دانلود فایل ها باید عضو آیرنکس باشید، تنها چند ثانیه زمان لازم است.

ورود / ثبت نام

[lrm_form default_tab=”register” logged_in_message=””]

نظرتان را در مورد این مطلب با ستاره دادن اعلام کنید
امیدوارم این مطلب برای شما مفید بوده باشد. نظرات ، مشکلات و پیشنهادات خود را در پایین صفحه اعلام کنید
محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. مالکیتی بر مطالب ارائه شده ندارم. اکثر فعالیت بنده در زمینه ترجمه است. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *