سلام.

همانطور که قولش رو داده بودم توی این آموزش می خوام کنترل یک LED رو از طریق گوشی هوشمندمون اونم با wifi در دست بگیریم .

 

توی این آموزش ما مثل آموزش قبلی پایه های ماژول esp8266  رو به برد arduino uno  وصل کردیم با این تفاوت که پایه های TX و RX ماژول ESP8266 به پایه های 10 و 11 برد آردواینو وصل شده.پس ترتیب پایه ها میشه:

ESP8266 pin 3.3v —> Arduino pin 3.3v

ESP8266 pin CH_PD(EN) —> Arduino pin 3.3v

ESP8266 pin GND —> Arduino pin GND

ESP8266 pin TX —> Arduino pin 10

ESP8266 pin RX —> Arduino pin 11

در ضمن ما یک ELD هم جهت روشن و خاموش کردن با وای فای به arduino وصل کردیم که برای اون باید پایه مثبت LED رو به پین 13 آردواینو و پایه منفی اون رو به GND آردواینو وصل کنید.

پس از اتصال درست این پایه ها ، نوبت به آپلود کد مورد نظرمون در آردواینو میرسه.

توی کد توضیحات لازم رو کامنت کردم . اما روش کلی رو توضیح میدم .

کار کرد کد به این صورته که اول ماژول wifi esp8266 رو ریست میکنه و سپس از ماژول درخواست میکنه که ip اصلی ماژول وای فای رو به ما بده (اگه Serial Monitorباز باشه قابل دیدن خواهد بود)

به صورت دیفالت و پیش فرض این ip  عدد 192.168.4.1  هستش (صرفا جهت اطلاع)

سپس به بورد esp8266 با AT COMMAND  میگه که اجازه قبول کردن اتصال کانکشن به ماژول وای فای مون داده بشه.

در آخر هم پورت 9999  برامون باز کن که بهش متصل شیم.

اما بعد از کانفیگ ESP8266  توی قسمت تابع setup ما دستورات ورودی که ماژول وای فای مون از طریق وای فای گرفته رو آنالیز میکنیم .

این دستورات به طور کلی میگه که اگه حرف a ارسال شد، برای ما LED رو روشن کن.

اگه حرف b  ارسال شد LED رو خاموش کن.

و اگه حرف c ارسال شد ، کلا کانکشن رو ببند.

سوالی که پیش میاد اینه که اصلا چطوری این حروف a , b, c رو از طریق WIFI بفرستیم؟

جواب اینه که باید برنامه نویسی سوکت بکنیم مثلا اگه هدفمون app andriod هست باید براش سوکت بنویسیم که به ip ماژولمون که عدد 192.168.4.1 هست سوکت بزنه و به پورت 9999 وصل بشه.

گزینه دوم من که اینجا حال برنامه نویسی اندروید ندارم استفاده از application ای به نام TCP CLient هست.

 

عکس بالا ایکون اون برنامه هست و از گوگل پلی یعنی اینجا می تونید نصبش کنید.تنظیم کردنش بسیار راحته.

ما فرض میکنیم که کدتون رو توی آردواینو upload کردید و حالا با گوشی اندروید به wifi متصل بشید احتمالا اسم وای فای اش AI-THIMKER هستش.بعد از وصل شدن ، اپلیکیشن رو باز کنید و مثل عکس کانفیگش کنید (عکس زیر)

بعد که بازش کنید اگه همه چی درست انجام شده باشه بالا صفحه گوشه سمت چپ مینویشه Connected حالا میتونید فرمان a رو بفرستید و خواهید دید که LED روشن خواهد شد .با b  هم خاموش میشه .و با c از ترمینال میاد بیرون و ارتباط رو می بنده.

همین و تمام شد.

این نکته رو در پایان بگم که این روش کُنده و delay ای در حدود 1 تا 1.5 ثانیه داره .اگه برنامه نویسیتون خوب باشه میتونید این delay رو کمتر کنید.من یک کد دیگه البته برای فروش میذارم توی همین آموزش که کمی بهتر کار میکنه (البته کار خاصی هم نکردم توش) اگه دوست داشتید میتونید بخریدش که این نشانه حمایت شما میشه.

ممنون و موفق  باشید.

20 Comments

  1. با سلام و عرض ادب و احترام
    کدی که برای فروش بود رو هم من گرفتم و دیدیدم ممنون .
    آقا من میخواستم ببینم همین کار رو با استفاده از طریق اتصال به مودم منزل چه طور میتوان انجام داد یعنی از طریق IP Static از بیرون از منزل به مودم وای فای وصل بشم و مودم ئای فای عمل Port Forwarding رو بر روی ماژول ESP8266 انجام بده و سپس بتونم از طریق آردوینو عمل خاموش یا روشن شدن رو انجام بدم .
    ممنون اگه راهنماییک کنید .
    متشکر

    پاسخ
    • سلام. بله دوست عزیز با پورت فورواردینگ میشه .توی آموزش های قبلی تصویر AT کامندهارو گذاشته بودم . فقط کافیه که ماژول روی حالت station mode بره . و بعد از طریق مودم wifi داخل خونه یا محل کار میتونی عمل port forwarding رو انجام بدی .البته الان هم رو همون حالت هست .اگه به روش های جدیدتر علاقه داری ازطریق سایت پیام بذار تا به میلت جواب بدم و راه های جدیدتری رو معرفی کنم.موفق باشی

      پاسخ
  2. سلام و تشکر فراوان بعد از کلی گشت زنی بالاخره تو سایت ایرانی پیدا کردم این سایت خارجی ها روانی میکنه آدمو
    برای تشکر میخواستم پول donate کنم لطفا شماره حساب به ایمیلم بزنید

    پاسخ
  3. exit status 1
    request for member ‘begin’ in ‘1’, which is of non-class type ‘int’

    ارور داره کدت
    حداقل یکبار خودت اجراش می کردی

    پاسخ
  4. با سلام خسته نباشید
    ما ماژول esp8266 -07 رو خریدیم به همراه arduino uno r3 میخاییم ک با کد های شما راه بیاندازیم.
    کد رو اپلود میکنم هیچ اروری نداره ولی وقتی میخام با برنامه بهش متصل بشم میزنه fail to connect

    میخاستم ببینم چجوری میشه اینو راه انداخت
    اگه کمک بکنید ممنون میشم

    پاسخ
  5. با سلام من این برنامه و چند برنامه ی دیگر را تست کردم ولی در سریال مانیتور عبارت OK دریافت نمیشود. از طریق ماژول USB به UART دیتاهای ارسالی و دریافتی به ماژول قابل مشاهده است و کاملا صحیح ارسال و دریافت میشود. ولی در نرم افزار آردویینو به داده های دریافتی از ماژول ESP دسترسی ندارم.( نه به عبارت OK دسترسی دارم و نه به دیتایی که از طریق نرم افزار سوکت پروتکل به ماژول میفرستم) تابع esp.available اجرا نمیشود
    لطفا راهنمایی کنید

    پاسخ
  6. خیلی ممنون مشکلم حل شد. من پایه های 19و18 را به جای 10و 11 استفاده میکردم. نمیدونم چرا با 19 و 18 جواب نمیداد.
    اگه ممکنه یه آموزش برای ارتباط آردویینو و یک صفحه ی وب از طریق ESP بگذارید. توی اینترنت بیشتر آموزشها از طریق ESP بدون استفاده از برد آردویینو میباشد. ممنون.

    پاسخ
  7. سلام یه سوال داشتم که خیلی واسم مهمه ممنون میشم کمکم کنید.
    من یه پروژه با RFID راه انداختم با اردینیو حالا باید این اطلاعات رو بفرستم روی ESP8266 میشه بگید چطور باید اینکار و کنم؟

    پاسخ
    • دوست عزیز ماژول esp8266 به صورت دیفالت از AT کامند استفاده میکنه .برای ارسال به ماژول esp8266 باید جدول فرمان های این ماژول رو داشته باشید.
      اگر شما به صورت تخصصی میتونید ماژول esp8266 رو کانفیگ و پروگرام کنید ، کارتون بسیار راحت میشه.
      در غیر این صورت پیشنهاد من nodemcu هست .در حقیقت nodemcu همون esp8266 و arduino هست که به هم متصل شدند در این حالت میشه خیلی راحت داده ها رو به سریال ماژول wifi ش که همون esp8266 هست انتقال داد.
      موفق باشید

      پاسخ
  8. سلام منم دقیقا میخوام همین کارو کنم یعنی الان یه پروژه دارم با اردینو و یه نود ام سی یو که باید اطلاعات از اردوینو فرستاده بشه به نود ام سی یو یه لاجیک کانورتر نیاز دارم ولی در مورد برنامش نمیدونم باید چی کنم؟مثالی دارید بهم بدید لینکی چیزی فکر کنم باید از مستر اسلیو استفاده کنم فقط نمیدونم از کجا باید شروع کنم؛مرسی از پاسخ گوییتون.

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

    پاسخ

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

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

1000 تومان
خرید
  • این آموزش رایگان است و این خرید فقط و فقط جهت بهبود کدشما می باشدونه چیز دیگر
  • آموزش کنترل سخت افزار با گوشی هوشمند اندروید و WIFI
  • هوشمند سازی با WIFI