کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور

کنترل وسایل برقی با WIFI

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

بعد قبل
کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
بعد قبل

در این پروژه آردوینو از مبحث آموزش آردوینو قصد داریم تا 4 رله را که به یک برد آردوینو Arduino متصل شده اند، را توسط یک موبایل به واسطه امواج WIFI از راه دور کنترل نمائیم. همچنین در این پروژه برای اینکه بتوانیم برد آردوینو را به پروتکل WIFI (وای.فای) مجهز کنیم از ماژول ESP8266 کمک گرفته ایم.

ماژول WIFI ESP8266

در مطلب قبلی (معرفی ماژول ESP8266 و دستورات AT Command) با ماژول ESP8266 به صورت کامل آشنا شدیم. ماژول WIFI مدل ESP8266 را می توانیم به دو صورت سرور (SERVER) و کلاینت (client) در پروژه های خود استفاده کنیم. در این پروژه تصمیم داریم تا ماژول ESP8266 را به صورت سرور (SERVER) راه اندازی کنیم. در این حالت موبایل کاربر جهت ارسال درخواست های کنترل وسایل برقی در وضعیت کلاینت (client) قرار می گیرد.

نقشه شماتیک پروژه کنترل وسایل برقی با موبایل از طریق WIFI

نقشه شماتیک پروژه کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور

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

برد آردوینو NANO با میکروکنترلر Atmega3281 عدد
ماژول Wifi با خروجی سریال ESP8266-031 عدد
آی سی ULN2804A مدل DIP اورجینال1 عدد
رگولاتور ولتاژ 5 ولت L78051 عدد
رگولاتور ولتاژ 3 ولت LF33CV1 عدد
دیود 1N40076 عدد
مقاومت 1 کیلو اهم با توان 0.25 وات و تلرانس 5 درصد4 عدد
مقاومت 330 اهم با توان 0.25 وات و تلرانس 1 درصد1 عدد
رله 12V ولت معمولی تک کنتاکت با جریان 10 آمپر4 عدد
خازن الکترولیتی 1000uf میکروفاراد 16 ولت2 عدد
خازن عدسی 100nF نانوفاراد1 عدد
لامپ LED قرمز سایز 5mm میلی متر مدل مات2 عدد
لامپ LED سبز سایز 5mm میلی متر مدل مات1 عدد
لامپ LED زرد سایز 5mm میلی متر مدل مات2 عدد
ترمینال پیچی 2 پین مدل KF300 رنگ آبی1 عدد
ترمینال پیچی 3 پین مدل KF300 رنگ آبی4 عدد
آداپتور 12V ولت 2A آمپر مدل بین راهی ساخت ایران1 عدد

نقشه PCB پروژه

بعد قبل
نقشه PCB پروژه کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
نقشه PCB پروژه کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
نقشه PCB پروژه کنترل وسایل برقی با آردوینو و ماژول WIFI ESP8266 در حالت سرور
بعد قبل

شرح عملکرد پروژه

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

نام WIFI ماژول = electronics98_ESP

پسورد WIFI ماژول = electronics98

پس از اتصال گوشی موبایل خود به ماژول WIFI لازم است اپلیکیشنی با نام WIFI Controller را بر روی تلفن هوشمند خود نصب کنید. ما از این برنامه برای ارسال فرامین کنترلی از طریق پروتکل WIFI برای برد آردوینو استفاده می کنیم. این App را می توانید از گوگل پلی دانلود کنید البته فایل نصبی آن در پیوست فایل پروژه آمده است که می توانید از انتهای همین مطلب به صورت مستقیم دانلود کنید. پس از نصب اپلیکیشن و اجرای آن با محیطی همانند تصویر زیر روبرو می شوید.

نحوه ارتباط با ماژول ESP8266 توسط نرم افزار WIFI Controller

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

آدرس IP (آی.پی) سرور = 192.168.4.1

شماره پورت (PORT) سرور = 8888

حال جهت کنترل وسایل برقی متصل به رله ها تنها کافی است دستورات مندرج در جدولی که در ادامه آمده است را همانند تصویر زیر در کادر مربوطه وارد کنید و سپس گزینه SendHEX را لمس کنید. در صورتیکه دستور شما به درستی وارد شده باشد و توسط برد آردوینو اجرا شود، نتیجه عملکرد دستورات ارسالی در قسمت Received Data نرم افزار WIFI Controller چاپ می شود.

نحوه ارسال داده برای ماژول ESP8266 توسط نرم افزار WIFI Controller

دستورات مورد نیاز جهت کنترل رله ها در برنامه WIFI Controller موبایل

کد دستوری روشن کردن رله اول

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

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

نتیجه بازگشتی دستور پس از آنکه برد آردوینو وسیله برقی اول را غیر فعال کرد.

کد دستوری روشن کردن رله دوم

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

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

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

کد دستوری روشن کردن رله سوم

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

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

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

کد دستوری روشن کردن رله چهارم

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

کد دستوری خاموش کردن رله چهارم

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

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

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

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

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

برنامه نویسی برد Arduino در نرم افزار آردوینو

ویدیو ضبط شده از نحوه راه اندازی و عملکرد پروژه

دانلود ویدئو با لینک مستقیم از سرورهای پرقدرت الکترونیک 98

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 حجم فایل : 5 مگابایت

 محیط برنامه نویسی : Arduino (IDE)

 برنامه نویسی شده به زبان : ترکیبی از برنامه نویسی به زبان سی (C) یا سی پلاس پلاس (++C)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 6 ژوئن 2019

163 دیدگاه

  1. سلام و خسته نباشید به شما

    عید نوروز رو به شما و عوامل سایت الکترونیک 98 تبریک می گم

    اگر امکانش هست فایل پروتیوس رو ارسال کنید

  2. فرهاد اکبری

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

  3. اگر براتون ممکن هست من ایمیلم رو همینجا میزارم به ایمیلم بفرستید و خبر بدید ممنون لطف و محبت شما میشم

  4. فرهاد اکبری

    با سلام و احترام
    فایل به ایمیل شما ارسال گردید.

  5. سلام استاد خیلی لطف کردید ممنونم

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

  7. راستی تویه توضیحات در اپلیکیشن الکترونیک ۹۸ شما گفتید ماژول وای فای esp8266-12e اما من داخل فیلم شما که دقت کردم از esp8266-12f استفاده کردید. آیا این دو با هم تفاوت دارند یا نه؟ چرا شما ۱۲ اف گزاشتین و تو توضیحات گفتید ۱۲ ای؟ ممنون میشم راهنمایی کنید آخه پروژه ترمم هست

  8. اگر مشکل با خرید esp8266-12f حل میشه من مشکلی ندارم فقط تو رو خدا تخصصی بگین که مشکل از همین ماژول هست یا نه

  9. فرهاد اکبری

    با سلام و احترام
    شما می توانید از هر دو ماژول esp8266-12f و esp8266-12e استفاده کنید. با توجه به گفته های شما احتمالا ارتباط Uart بین ماژول شما و برد آردوینو برقرار نیست، برای این منظور بهتر است ابتدا توسط یک مولتی متر نمامی اتصالات روی برد را به صورت کامل بررسی فرمایید. سپس در صورتیکه هنوز مشکل پابرجا بود بهتر است برای بررسی صحت عملکرد ماژول WIFI آنرا با استفاده از یک ماژول مبدل USB به TTL سریال به کامپیوتر متصل نمایید و از طریق محیط ترمینال نرم افزار آردوینو با بادریت 115200 با ماژول WIFI ارتباط برقرار کنید و کدهای موجود در زیر برنامه های زیر را به ترتیب به صورت دستی برای ماژول ارسال کنید و بررسی کنید که آیا ماژول به فرامین شما پاسخ می دهد یا خیر.
    set_ESP8266_server();
    set_ip_wifi();
    set_pass_wifi();

  10. سلام مجدد خیلی ممنون حتما تست میکنم

  11. سلام
    من از یه فایل دیگه برای برنامه نویسی استفاده کردم فقط نمیدونم شماره port رو از کجاش پیدا کنم

  12. سلام ، لطفاً فایل pcb یا فایل برنامه پروتئوسشو میفرستید

  13. سلام وقت بخیر
    دلیل استفاده از برد آردینو چیه !
    ماژول esp8266 خودش پردازنده هست و نیازی به یه پردازشگر دیگر نداره!

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

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

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.