برد ESP8266 برد Nodemcu پروژه های آردوینو

طراحی و پیاده سازی ساعت سخنگو با برد Nodemcu و ماژول DFplayer

create-speaking-clock-with-esp8266-nodemcu-dfplayer-and--digispark
نوشته شده توسط معین صابری

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

 


نحوه عملکرد ساعت سخنگو


ساعت سخنگو این پروژه از برد NODEMCU به عنوان هسته پردازشی و از ماژول DF PLAYER به عنوان پخش صدا استفاده می کند. برای عملکرد این پروژه باید صداهایی که بیانگر اعداد هستند را در یک کارت SD قرار دهیم. بدین ترتیب NODEMCU به اعمال فرمان به ماژول، صدا را پخش خواهد کرد. اما در این پروژه ساعت توسط اینترنت دریافت می گردد. بله اینترنت! از آنجاییکه برد NODEMCU قابلیت اتصال به شبکه اینترنت را دارد، زمان را از اینترنت دریافت کرده و معادل عددی آن را با فرمان به ماژول MP3، پخش نمود.

نحوه عملکرد ساعت سخنگو - دیجی اسپارک

 

 مطابق تصویر فوق، برد NODEMCU به اینرتنت از طریق مودم و یا نقطه های دسترسی متصل م یگردد. سپس ساعت را از سروی NTP دریافت کرده و به کمک ماژول DF PLAYER پخش خواهد نمود. در ادامه این آموزش به تشریح قطعات به کار رفته در پروژه می پردازیم.

 


برد NODEMCU


اگر در رابطه با بردهای ESP8266 اطلاعی ندارید، همین الان سلسله آموزش های مربوط به آن را با کلیک بر روی این لینک، مطالعه نمایید. همانطور که اطلاع دارید، برد NODEMCU از هسته پردازشی ESP8266-12 تشکیل شده است. این برد دسترسی به پایه های GPIO را بسیار ساده می نماید. همچنین بر روی این برد رگولاتور ۳٫۳ تعبیه شده که به سادگی برد را تغذیه می کند. البته کم لطفی است که در رابطه با مبدل سریال به USB برد و سادگی در پروگرام شدن برد، سخنی به میان نیاوریم. برد NODEMCU دارای سوکت USB بوده که به رابط سریال به USB آن متصل است. بدین ترتیب این برد به سادگی و تنها از طریق کابل، تغذیه و پروگرام خواهد شد.

برد Nodemcu در پروژه ساعت سخنگو با آردوینو - دیجی اسپارک

 

 از آنجاییکه بردهای ESP قابلیت پروگرام شدن را در خود جای داده اند، لذا به کمک زبان برنامه نویسی آردوینو این پروژه را اجرا می کنیم.

 


ماژول DF PLAYER


پس از بررسی برد پردازنده اصلی، نوبت به ماژول پخش صدا می رسد. ماژول DF PLAYER MINI یک ماژول فوق العاده کاربردی و مهم در زمینه پخش صدا به شمار می رود. به کمک این ماژول می توانید صداهای ضبط شده در کارت SD را پخش نمایید. راه اندازی و کار با این ماژول به لطف کتابخانه آردوینو، بسیار ساده است.

ماژول dfplayer در پروژه ساعت سخنگو - دیجی اسپارک

 

 این ماژول که از رابط سریال UART بهره می برد، فرامین پخش و کنترل صدا را از طریق کتابخانه، دریافت و اجرا می کند. در این پروژه به کمک این ماژول ساعت را به صورت صوتی پخش می کنیم. برای این مورد باید اعداد بین ۱ الی ۵۹ به صورت فایل های صوتی در یک کارت SD قرار گیرند. بدین ترتیب با دریافت زمان از طریق NTP، معادل صوتی آن با فرمان به ماژول DF پخش خواهد شد. همچنین این ماژول دارای ولتاژ کاری ۳٫۲ الی ۵ بوده که به سادگی با برد NODEMCU راه اندازی می گردد.

 


شماتیک و اتصالات پروژه ساعت سخنگو


پس از بررسی قطعات، نوبت به شماتیک و اتصالات می رسد. ابتدا به تصویر زیر که شمایی کلی از اتصالات را نمایش می دهد، دقت کنید.

شماتیک و اتصالات پروژه ساعت سخنگو - دیجی اسپارک

 

 در ادامه اتصالات را به شکل زیر در پیش بگیرید.

  • اتصال یک پایه کلید به پایه D1 و پایه دیگر آن به GND
  • اتصال پایه VCC ماژول DF به پایه VIN برد NODEMCU
  • اتصال پایه GND ماژول DF به پایه GND برد NODEMCU
  • اتصال پایه RX ماژول DF به کمک یک مقاومت یک کیلو اهم به صورت سری به پایه D2
  • اتصال پایه TX ماژول DF به کمک یک مقاومت یک کیلو اهم به صورت سری به پایه D1

 


نصب کتابخانه های مورد نیاز


در این آموزش، همانند سایر آموزش ها، می بایست به نصب کتابخانه های مورد نیاز خود، بپردازیم. در این قسمت نیاز است تا به نصب کتابخانه NTP مخصوص تراشه ESP8266، اقدام شود. سرویس NTP یک سرویس رایگان جهت دریافت زمان فعلی است. برای دانلود و نصب این کتابخانه، کافیست از طریق منوی Tools نرم افزار آردویینو، بر روی گزینه Manage libraries کلیک کرده و در قسمت جستجوی ظاهر شده، عبارت ntpclient را تایپ نمایید.

نصب کتابخانه NTP در آردوینو - دیجی اسپارک

 

مطابق تصویر فوق، کتابخانه مشخص شده در کادر قرمز رنگ با نام fabric weinberg را انتخاب و نصب نمایید. پس از این مرحله، نوبت به نصب کتابخانه پخش صدای DF MINI PLAYER  می رسد. مطابق مرحله، پیشین با کلیک بر روی منوی Tools وسپس انتخاب گزینه Manage Libraries، در کادر جست و جو، عبارت DFPlayer_Mini را تایپ کرده و مطابق کادر قرمز رنگ در تصویر زیر، کتابخانه DF ROBOT را نصب نمایید.

نصب کتابخانه DFPlayer_Mini در آردوینو - دیجی اسپارک

 


 کدهای پروژه ساعت سخنگو


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

 

جهت دسترسی به این بخش، اشتراک اسپارکر پلاس تهیه کنید.

 


اجرای پروژه ساعت سخنگو


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

 

توجه: برای پخش صدا، فایل های صوتی صدا از شماره ۱ الی ۵۹ را در کارت SD ذخیره کنید. برای این مورد، یک فولدر به نام ۱۷ ایجاد کنید. در این فولدر فایل های صوتی را قرار دهید. توجه داشته باشید که فایل های صوتی به صورت ۰۰۱٫mp3، ۰۰۲٫mp3 و…. درون فایل ذخیره گردند. برای اعداد دو رقمی نظیر ۱۲، فایل را به صورت ۰۱۲٫mp3 ذخیره نمایید. پس از فشردن کلید، فایل های صوتی مربوط به ساعت و دقیقه پخش خواهند شد.

اجرای پروژه ساعت سخنگو با آردوینو - دیجی اسپارک

 


 تحلیل کدهای پروژه ساعت سخنگو


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

 

جهت دسترسی به این بخش، اشتراک اسپارکر پلاس تهیه کنید.

 


لوازم مورد نیاز


برد NODEMCU

ماژول DF PLAYER

بلندگو

کلید 

مقاومت

 


جمع بندی


در این پروژه به کمک برد وای فای NODEMCU و ماژول MP3 مدل DF PLAYER اقدام به طراحی و پیاده سازی یک ساعت سخنگو نمودیم. به کمک این پروژه با فشردن یک دکمه، ساعت فعلی به صورت صوتی پخش خواهد شد. در این پروژه جهت تعیین زمان از سرورهای NTP استفاده می شود. برد NODEMCU که قادر به برقراری ارتباط اینترنتی است، با اتصال به اینترنت ساعت فعالی را می خواند. سپس معادل صوتی آن توسط ماژول DF PLAYER پخش خواهد شد. در این آموزش ابتدا به معرفی قطعات و کاربردهای آن پرداخته ایم. سپس در ادامه شماتیک و اتصالات، کتابخانه های مورد نیاز و کدهای پروژه را معرفی کرده ایم. در نهایت با اجرا و تحلیل کدها، آموزش را به پایان می بریم.

 

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

 

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

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه

۱۶ دیدگاه