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

ساخت دستگاه پیجر رومیزی رستورانی به کمک برد MEGA2560 WIFI آردوینو

نوشته شده توسط معین صابری

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

 


عملکرد پیجیر رومیزی رستوران


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

در این آموزش به طراحی و پیاده سازی سیستم پیجر رستورانی به کمک برد MEGA2560 WIFI خواهیم پرداخت. در طرف گیرنده پیجر نیز از ماژول های ESP8266 استفاده که فرمان ارسالی از سوی برد MEGA2560WIFI را دریافت کرده و به کاربر آماده شدن غذا را اطلاع می دهد.

 


ماژول وای فای ESP8266


ماژول وای فای ESP8266، یک چیپ ارزان قیمت با قابلیت برقراری ارتباط وای فای است. به کمک این ماژول می توانید یک نقطه دسترسی(Access Point) ساخته و یا اینکه آن را به مد station برده تا به دیگر مودم های وای فای متصل سازید. همچنین این ماژول می تواند از طریق اتصال به مودم وای فای، به شبکه اینترنت متصل شده و به ارسال و دریافت داده بپردازد. یکی دیگر از قابلیت های فوق العاده ماژول های ESP8266، برنامه نویسی آن به کمک آردویینو است. به عبارت دیگر، این ماژول علاوه بر اینکه می تواند قابلیت اتصال بیسیم را فراهم کند، می تواند همانند یک برد آردویینو، برنامه های آردویینو را به سادگی اجرا کند. از طرفی، وجود سیستم عامل FREERTOS سبب می شود که بدون نگرانی از کند شدن بخش شبکه، برنامه های خود را به اجرا درآورید.

پروگرام کردن برد ESP8266 - دیجی اسپارک

 


برد مگا۲۵۶۰ با قابلیت وای فای


برد مگا۲۵۶۰ وای فای، یک برد قدرتمند با قابلیت اتصال به شبکه اینترنت و ایجاد شبکه وای فای لوکال است. این برد، در حقیقت نسخه پیشرفته برد مگا۲۵۶۰ به حساب آمده و به کمک پردازنده ESP8266، می توان علاوه بر اتصال به اینترنت، از قدرت پردازشی بسیار بالای پردازنده وای فای  نیز استفاده نمود. در این آموزش(لینک آموزش-کلیک کنید) به طور کامل راجع به امکانات، ویژگی ها و نحوه راه اندازی به همراه یک نمونه پروژه، صحبت شده است.

مقایسه برد Mega2560 Wifi و برد آردوینو Uno - دیجی اسپارک

 


پیجر رومیزی با برد Mega2560 Wifi


همانطور که پیشتر بیان شد، برد مگا۲۵۶۰ وای فای، از دو تراشه مگا۲۵۶۰ و ESP8266 تشکیل شده است. از طرفی، مکانیزم پیجرها به این صورت است که این دستگاه ها، دارای دو قسمت گیرنده و یک فرستنده است. هر گیرنده دارای یک شماره مخصوص به خود است. در طرف فرستنده، معمولا دارای یک صفحه کلید است که کاربر می تواند با فشردن دکمه، پیغامی به گیرنده مخصوص ارسال نماید. به عبارت دیگر، با فشردن کلید ۱، پیغام آماده شدن غذا به پیجر شماره ۱ ارسال خواهد شد.

 

در این آموزش، از برد مگا ۲۵۶۰ با تراشه وای فای ESP8266، جهت ارسال پیام به دستگاه های گیرنده پیجر، استفاده نموده ایم. سمت گیرنده نیز، از ماژول ESP8266 نسخه ۱۲E استفاده نموده ایم. در حقیقت، بین دستگاه فرستنده(مگا ۲۵۶۰ وای فای) و گیرنده(ESP8266-12E) یک شبکه وای فای جهت ارسال و دریافت داده ایجاد می نماییم. در قسمت فرستنده، میکروکنترلر مگا۲۵۶۰ عدد مورد نظر را از طریق صفحه کلید ماتریسی ۳*۴، از کاربر دریافت نموده و به قسمت وای فای، ارسال می نماید. سپس در ادامه، تراشه وای فای برد مگا۲۵۶۰، عدد مورد نظر را به گیرنده پیجر ارسال می نماید.

ساخت پیجر رستورانی با آردوینو برد Mega2560 Wifi - دیجی اسپارک

 


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


در این قسمت، کتابخانه ها و ابزارهای مورد نیاز پروژه را نصب خواهیم کرد. در ابتدا، نیاز است تا هسته ESP8266 را در نرم افزار آردویینو خود نصب نماییم. بدین منظور، ابتدا در گزینه file، بر روی گزینه preferences کلیک نمایید.

نصب هسته ESP8266 از بخش preferences آردوینو - دیجی اسپارک

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

نصب پکیج ESP8266 در آردوینو - دیجی اسپارک

در قسمت کادر، عبارت زیر را قرار دهید.

http://arduino.esp8266.com/stable/package_esp8266com_index.json

در مرحله بعدی، نیاز است تا هسته ESP8266 را دانلود نماییم. به همین منظور، بر روی گزینه Tools، سپس Boards و در نهایت بر روی گزینه Board manager کلیک کنید. با کلیک بر روی این گزینه، با منوی زیر رو به رو خواهید شد. در قسمت جست و جو، عبارت ESP8266 را جستجو و سپس نصب نمایید.

 


شماتیک و اتصالات بخش فرستنده


همانطور که پیشتر بیان شد، در بخش فرستنده از برد MEGA2560 با تراشه وای فای ESP8266 استفاده شده است. در این بخش، به کمک یک صفحه کلید ۴*۳، عدد پیجر گیرنده را از کاربر دریافت کرده و به تراشه وای فای ESP8266 ارسال خواهیم نمود. در این آموزش، ما از یک کیپد ۳*۴ استفاده نموده ایم. نحوه اتصال آن به برد مگا۲۵۶۰ وای فای را به صورت زیر مشاهده می نمایید.

اتصالات کیپد به برد Mega2560 Wifi - دیجی اسپارک

 

جهت اتصال کی پد به برد آردویینو، مطابق فلش زیر، از سمت راست به چپ، پایه های کی پد را به ترتیب به پایه های ۹،۸،۷،۶،۵،۴،۳ متصل نمایید.

جهت شناسایی پایه‌های کیپد ماتریسی - دیجی اسپارک

 


شماتیک و اتصالات بخش گیرنده


در قسمت گیرنده، از تراشه وای فای ESP8266-12E استفاده نموده ایم. زمانیکه پیغام از طرف فرستنده برای گیرنده ارسال می گردد، یک موتور ویبره به همراه چراغ چشمک زن فعال می شود. در زیر، شماتیک مدار را مشاهده می نمایید.

در مدار فوق، تغذیه ماژول ESP8266 را از یک منبع ۳٫۶ ولتی تامین نموده ایم. شما اما می توانید به کمک دو عدد باتری قلمی، ولتاژ مورد نیاز این ماژول را فراهم نمایید. چراکه این ماژول تغذیه ای بین ۲٫۵ الی ۳٫۶ خواهد داشت. در رابطه با موتور، حتما در نظر بگیرید که از یک موتور ویبره کوچک با نهایت جریان ۴۰۰ میلی آمپر استفاده شده است. ترانزیستور به کار رفته هم از نوع NPN نیز، می باشد. در مدار فوق، پایه ۱۲ ماژول به عنوان خروجی تعریف شده است. این پایه علاوه بر اینکه به LED جهت کنترل نور آن متصل شده، از طریق یک مقاومت یک کیلو اهم(با توجه به جریان موتور) به پایه بیس ترانزیستور وصل شده است. وضعیت پایه های ترانزیستور در مدار فوق، به شکل زیر است.

پایه امیتر به GND متصل شده

پایه بیس به کمک یک مقاومت یک کیلو اهمی به پایه GPIO12 ماژول ESP8266 متصل شده است.

پایه کلکتور به یکی از پایه های موتور (تفاوتی در پایه های موتور وجود ندارد) متصل شده است. همچنین دیگر پایه موتور به پایه مثبت تغذیه متصل می گردد.

در این مدار، LED به شکل زیر به مدار متصل شده است.

پایه آند به پایه GPIO12

پایه کاتد به کمک یک مقاومت یک کیلو اهم، به پایه GND مدار متصل می گردد.

در رابطه با موتور، یکی از پایه های آن(به طور دلخواه) به پایه مثبت تغذیه و پایه دیگر به پایه کلکتور ترانزیستور، متصل می گردد.

 


کد فرستنده برد Mega2560 Wifi


در این قسمت کدهای بخش مگا ۲۵۶۰ را مشاده می کنید. در منوی Tools، گزینه برد، mega2560 را انتخاب کنید و این کدها را کپی نمایید.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندس‌های دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید.

 

 


کد فرستنده تراشه ESP8266


در این قسمت به بررسی کدهای بخش ESP8266 می پردازیم. برای آپلود کدها، ابتدا در منوی Tools، بر روی گزینه Boards کلیک کرده و برد ESP8266-GENERIC را انتخاب نمایید. در نهایت کدهای زیر را در نرم افزار آردویینو کپی نمایید.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندس‌های دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید.

 

 

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

دکمه پروگرام برد Mega2560 Wifi با تراشه ESP8266 - دیجی اسپارک

 


کدهای بخش گیرنده ESP8266


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

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندس‌های دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید.

 

 

همانطور که پیشتر بیان شد، ما برای قسمت گیرنده، از ماژول وای فای ESP8266-12E استفاده می نماییم. جهت آپلود کدهای برنامه بر روی این ماژول، می بایست ابتدا پایه GPIO0 را به گراند متصل کرده و سپس اتصال تغذیه را فعال نمایید. در این حالت، ماژول در حالت پروگرام قرار می گیرد. پس از اتمام آپلود، اتصال پایه GPIO0 را از زمین جدا کرده و یکبار دیگر تغذیه ماژول را قطع و  وصل نمایید.

 


پروژه پیجر رستوران با برد MEGA2560 WIFI


در این قسمت به اجرای پروژه پیجر رومیزی رستوران به کمک برد MEGA2560 WIFI می پردازیم. همانطور که پیشتر بیان شد، هر پیجر دارای یک شماره بوده و زمانیکه شماره آن را در کیپد وارد نماییم، برای پیجر مورد نظر، پیغام ارسال خواهد شد. به عنوان مثال، فرض کنید برای پیجر شماره یک می خواهیم پیام ارسال نماییم. به همین منظور، عدد یک را از روی کیپد انتخاب می نماییم. پس از این مرحله، پیجر گیرنده با ارسال درخواست به پیجر فرستنده که فرستنده همان تراشه ESP8266 برد مگا۲۵۶۰ است، عدد یک را دریافت نموده و موتور ویبره و چراغ LED فعال خواهند شد.

پروژه پیجر رومیزی رستورانی با برد Mega2560 Wifi - دیجی اسپارک

 


تحلیل کد پیجر رومیزی با برد MEGA2560 WIFI


این پروژه دارای دو قسمت فرستنده و گیرنده است. در قسمت فرستنده از برد مگا۲۵۶۰ به همراه وای فای استفاده نموده ایم. در این برد، دو قسمت مگا۲۵۶۰ و تراشه ESP8266 از طریق پورت سریال با یکدیگر در ارتباط هستند. ارتباط بین این دو پورت را از طریق کلید سلکتور فراهم می گردد. به کمک صفحه کلید، کاربر می تواند یک عدد وارد نماید. در حقیقت این عدد شماره  پیجر جهت ارسال پیام است. این عدد از طریق پورت سریال به ماژول ESP8266 ارسال می گردد. در طرف ماژول ESP8266، هر پاسخ به هر درخواست(متد GET)، عددی که از طرف پورت سریال دریافت شده است، برگردانده می شود. در طرف دیگر، دستگاه های گیرنده به طور دائم مشغول اتصال به سرور و ارسال درخواست هستند. برای هر پیجر گیرنده یک شماره تعیین کرده ایم. این شماره می تواند یک عدد بین  الی ۱۰ باشد. زمانیکه یک پیجر در جواب درخواست خود، عدد شماره خود، مثلا ۱ را دریافت نمود، می باست با فرمان به موتور ویبره و LED، پیام دریافت شده را اعلام نماید.

 


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


بردمگا۲۵۶۰ وای فای

کی پد 

ماژول ESP8266-12E

برد توسعه ESP8266(تبدیل SMD به DIP)

مبدل سریال به USB

ترانزیستور

موتور ویبره

LED

مقاومت

 


جمع بندی


در این آموزش در رابطه طراحی و پیاده سازی سیستم پیجر رومیزی رستوران پرداختیم. سیستم های پیچر های رستورانی، ابزارهایی بسیار پرکاربرد در رستوران ها و فست فود هاست. به کمک این دستگاه ها، زمانیکه غذای مشتری حاضر شود، از طریق رستوران به صورت بی سیم، به گیرنده ای که در اختیار مشتری و روی میز وی است، پیام ارسال شده تا مشتری جهت دریافت غذای خود مراجعه نماید. در این آموزش، برای قسمت فرستنده از برد مگا۲۵۶۰ وای فای استفاده نموده ایم. این برد ترکیب دو تراشه mega2560 و ESP8266 است. در طرف گیرنده نیز از ماژول ESP8266-12E استفاده نموده ایم.

 

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

 

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

معین صابری

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

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

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

۲ دیدگاه

    • سلام و ممنون از شما
      اگر منظور شما در قسمت گیرنده است، بله میشود، اما esp-12e اطمینان بالاتری دارد، ماژول esp-01 دو پایه gpio دارد که یکی برای مد پروگرام و دیگری برای uart2 است، بهتر است برای gpio از این دو پایه استفاده نشود.