پروژه پخش آهنگ با برد آردوینو و آمپلی فایر

محتویات
سلام. پروژه پخش کننده موسیقی با آردوینو و آمپلی فایر با LM386 را آماده کردیم.
آموزش ساخت موزیک پلیر با آردوینو
افزودن صدا و موسیقی به پروژه ها همیشه جالب است. اگر از Arduino استفاده میکنید و پین های زیادی دارید، میتوانید به راحتی با خرید یک کارت حافظه SD و یک بلندگو معمولی، جلوه های صوتی جذابی را به پروژه خود اضافه کنید. در این پروژه آردوینو نشان میدهیم پخش و اضافه کردن موسیقی و جلوه های صوتی به آردوینو چقدر ساده است. این سادگی را مدیون کتابخانه های حرفه ای Arduino هستیم. ما همچنین با استفاده از آپ امپ LM386 یک آمپلی فایر حرفه ای برای این پروژه میسازیم.
فیلم زیر به شما در درک نحوه کار این پروژه کمک میکند.
پیشنهاد میکنم آموزش ایجاد صدا با دستور Tone در آردوینو را مشاهده کنید.
مدار پخش کننده موسیقی با آردوینو
شماتیک مدار برای پروژه پخش کننده فایل صوتی Arduino ساده است. شماتیک مدار در تصویر زیر نشان داده شده است.
از آنجا که پرونده های صوتی ما در کارت SD ذخیره می شوند، از این رو ماژول کارت خوان SD را به آردوینو متصل می کنیم. کارتهای SD با استفاده از پروتکل ارتباطی SPI با Arduino ارتباط برقرار می کنند. نحوه اتصال ماژول رم ریدر به آردوینو در جدول زیر نشان داده شده است.
آردوینو | ماژول کارت SD |
+5V | Vcc |
Gnd | Gnd |
پین 12 | MISO |
پین 11 | MOSI |
پین 13 | SCK |
پین 4 | CS |
اکنون Arduino قادر خواهد بود تا فایل موسیقی را از کارت SD بخواند و آن را بر روی شماره پین 9 پخش کند. اما سیگنال های صوتی تولید شده توسط Arduino در پین 9 زیاد شنیده نمی شوند. از این رو با استفاده از IC آپ امپ LM386 ولتاژ ضعیف را تقویت می کنیم.
ما همچنین دو دکمه را به پین 2 و 3 آردوینو متصل کرده ایم. این سوئیچ ها برای پخش آهنگ بعدی و پخش/مکث استفاده می شوند.
قطعات مورد نیاز
- برد آردوینو UNO
- ماژول کارت خوان SD
- تقویت کننده صوتی LM386
- خازن 10uf – دوعدد
- خازن 100uf – دو عدد
- مقاومت 1 کیلو اهم
- مقاومت 10 کیلو اهم
- دکمه – دو عدد
آماده سازی فایل های صوتی با فرمت WAV
برای پخش صداها از کارت SD با استفاده از Arduino ، به فایل های صوتی با فرمت .wav احتیاج داریم زیرا برد آردوینو می تواند فایل صوتی را با فرمت خاصی که فرمت wav است پخش کند. برای ساخت یک پخش کننده Mp3 ، میتوانید فایل های mp3 خود را به فرمت wav تبدیل کنید.
برای تبدیل فایل های Mp3 به Wav مراحل زیر را دنبال کنید.
مرحله 1: روی اینجا کلیک کنید تا وارد وبسایت “Online Wav Converter” شوید.
مرحله 2: آردوینو می تواند یک فایل wav را با مشخصات زیر پخش کند. میتوانید با تغییر این تنظیمات کیفیت صدا را تغییر دهید اما بنظر من این مشخصات بهینه ترین هستند.
Bit Resolution | 8 Bit |
Sampling Rate | 16000 Hz |
Audio Channel | Mono |
PCM format | PCM unsigned 8-bit |
مرحله 3: در وب سایت بر روی “choose file” کلیک کرده و پرونده مورد نظر برای تبدیل را انتخاب کنید. سپس مشخصات جدول بالا را در وبسایت وارد کنید، مانند تصویر زیر :
مرحله 4: حالا روی “Convert File” کلیک کنید. فایل صوتی شما به فرمت فایل Wav تبدیل می شود. همچنین پس از انجام تبدیل ، بارگیری می شود.
مرحله 5: در آخر کارت SD خود رافرمت کرده و فایل صوتی .wav را در آن ذخیره کنید. قبل از افزودن این پرونده، حتماً آن را فرمت کنید. همچنین نام فایل صوتی خود را به خاطر بسپارید. به همین ترتیب می توانید هر یک از چهار آهنگ خود را انتخاب کرده و آنها را با نام های 1 ، 2 ، 3 و 4 ذخیره کنید (نام ها نباید تغییر کنند). من چهار آهنگ را تغییر نام داده ام و آنها را مانند تصاویر زیر 1.wav ، 2.wav ، 3.wav و 4.wav ذخیره کرده ام.
کد پروژه پخش آهنگ با آردوینو
پس از اینکه مدار را مطابق با شماتیک طراحی کردید، تنها یک قدم مانده است. شما باید کد پروژه را در برد آردوینو خود بارگذاری کنید. کد کامل پروژه در فایل دانلودی انتهای صفحه قرار داده شده است. در اینجا قسمت های مهم کد را توضیح میدهیم.
شما میتوانید به راحتی هر فایل صوتی را با کد زیر پخش کنید.
music.play("3.wav");
شما میتوانید هر فایل موزیک را با کد زیر متوقف کنید.
music.pause(); //objectname.pause();
با کد زیر میتوانید به آهنگ را جلو و عقب کنید.
music.play("2.wav",33); //آهنگ را از ثانیه 33 پخش میکند
با کد زیر میتوانید کیفیت پخش موسیقی را تنظیم کنید.
این کتابخانه دو ویژگی برای پخش موسیقی به ما می ده ، یکی این است که به صورت عادی موسیقی را پخش کنیم و دیگری کیفیت موسیقی را دو برابر میکند.
music.quality(0); //حالت عادی music.quality(1); //حالت دو برابر
با کد زیر میتوانید صدای آهنگ را کم و زیاد کنید.
می توانید به راحتی با استفاده از خط زیر میزان صدا را تنظیم کنید. حجم موسیقی بالا بر کیفیت صدا تأثیر میگذارد.
music.setVolume(5); //پخش موسیقی با اندازه صدا 5
پس از برنامه نویسی Arduino ، دکمه متصل به پین 2 را فشار دهید و آردوینو شما آهنگ اول (ذخیره شده به عنوان 1.wav) را برای شما پخش می کند. اکنون می توانید دوباره دکمه را فشار دهید تا آهنگ مورد نظر خود را به آهنگ بعدی که 2.wav است تغییر دهید. به همین ترتیب می توانید به هر چهار آهنگ بروید. همچنین می توانید با فشار دادن دکمه دیگر، آهنگ را متوقف کنید.
موارد موجود در فایل : سورس کامل ، شماتیک کامل
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود
درود
با برد آؤدیینو 2560 کار نمیکنه، علت چی میتونه باشه
زمان پخش صدای خش خش میده
اما با آردیینو یونو اکی است
چطور میتونم یه برد اردوینو یا esp32 رو به ایرپاد یا هدفون بلوتوثی وصل کنم و بتونم موزیک یا صوت دریافتی از میکرو رو پخش کنم روی هدفون؟
سلام مهندس چرا بیشتر از ۹ فایل پخش نمی کند نمیشه بیشتر پخش کند ممنون میشم کمکم کنید
سلام خسته نباشید
بنده با ارتباط سریال بین دو اردوینو می خواستم وقتی که سریال برای یکی از اردوینو ها مثلا ۱ باشه فایل صوتی ۴ پخش شه ممنون میشم کمکم کنید
سلام عزیز
ارتباط سریال در دوره آردوینو کامل آموزش داده شده است
سلام وعرض ادب وتقدیر وتشکر بابت آموزش های خوبتون. جسارتا فایل ها باز نمیشن.اگه امکانش هست برنامه این پروژه رو برام ارسال بفرمایید.باتشکر
سلام عزیز
با نرم افزار winrar باز کنید
سلام. خسته نباشید.
خواستم بدونم می شه این پروژه را روی اردوینو عملی کرد و بعد با یک ماژول بلوتوثی آهنگ را روی هدفون بلوتوثی فرستاد؟
سلام عزیز
بله
خیلی ممنون از بابت اموزش خوب شما. من این پروژه رو اجرا کردم فقط کیفیت صدای خروجی آنچنان خوب نیست و عیب دیگه اینکه نمیشه فایل mp3 پخش کرد و بنظرم اگه از ماژول dfplayer استفاده بشود کیفیت صدای بیشتری دارد و فرمت های مختلف صوتی را نیز میتوان پخش کرد
سلام استاد
من نمی تونم کتابخانه tmrpcm رو وارد کنم ارور می ده
می نویسه ارور در باز کردن فایل می شه کتابخونه شو مجدادا برام ارسال کنید به ایمیلم
kaktoos8383@gmail.com
سلام عزیز
آموزش نصب کتابخانه آردوینو رو مشاهده کنید.
سلام مهندس خسته نباشید.من میخام با esp32 اسپیکر بلوتوثی درست کنم.یعنی با بلوتوث گوشی به esp32 وصل بشم وبا ی اسپیکر کامپیوتری موزیک پخش کنم امکان پذیر هست این کار و چطور میشه انجام داد.ممنون از سایت خوبتون
با سلام
فکر نکنم کتابخانه ای در این زمینه وجود داشته باشه و این کار رو سخت میکنه
پیشنهاد میکنم از ماژول های آماده استفاده کنید
سلام خسته نباشيد من اين پروژه موزيك پلير با اردينو رو پياده كردم اما صداي بسيار كم و نا مفهومي دارد دليلش چيه
سلام جناب. فایل رو از سایت ما دریافت کردید؟
سلام خسته نباشید
یه سوال داشتم
من میخوام یه جعبه درست کنم که با هر بار باز شدن در جعبه یه اهنگ جدید پخش بشه مثلا 13 تا
جمعا 8 دقیقه میشه
و آردوینو با باتری کار کنه
میخواستم بدونم باتری ای هست که جواب کار منو بده؟؟
ممنون میشم راهنماییم کنید
سلام جناب. بنده نمیدونم چه باتری ای معرفی کنم. نظرتون رو منتشر میکنم دوستان کمک کنند.
با سلام
مهندس شما میزان صدا رو با دستور music.setVolume() باید بر روی 4 یا 5 تنظیم کنید و کاری کنید تا بالاترین کیفیت رو بتونید به دست بیارید نه بالاترین میزان صدا ، بعد میتونید از یه ترانزیستور bc547 یا آیسی lm386 یا هر آمپیلی فایر دیگه ای میزان صدا رو افزایش دهید