آردوینو آموزش آردوینو برد ESP8266 برد Nodemcu برد ویموس Wemos پروژه های آردوینو

ساخت اکسس پوینت و کلاینت در Esp8266

how-to-create-access-point-with-esp8266-digispark-
نوشته شده توسط نیلوفر مهرنیا

اکسس پوینت یا نقطه دسترسی که به‌صورت اختصاری به آن AP یا ( WAP (Wireless Access Point گفته می‌شود، این امکان را برای ما فراهم می‌کند که بتوانیم سیگنال‌ را از دستگاه‌های وایرلس مختلف دریافت یا ارسال کنیم. در این آموزش از یک Wemos D1 mini برای اکسس پوینت و از یک Nodemcu برای کلاینت استفاده شده است. در ادامه با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

با تعریف یک اکسس پوینت می‌توان ارتباط چندین کلاینت (مشتری) را با هم برقرار کرد و یک شبکه محلی داشت و  توسط آن به یک یا چند دستگاه، دستورات یا دیتاهایی را ارسال و دریافت کرد. در ادامه این آموزش قصد داریم روش تعریف Access Point یا همان AP و client را در برد ESP8266 یا بردهای Nodemcu یا Wemos D1 mini آموزش دهیم.  در این پروژه به دو مورد از بردهای گفته‌ شده نیاز داریم که یکی از آن‌ها را به‌ عنوان اکسس پوینت و دیگری را کلاینت در نظر می‌گیریم و از آن‌ها می‌خواهیم متن‌هایی را برای هم ارسال و در سریال مانیتور نمایش دهند.

 


کد آردوینو کلاینت


 

 

در این قسمت،  رشته hello, I am client را به اکسس پوینت فرستاده و یک‌ رشته به نام answer که از سمت اکسس پوینت می‌آید را دریافت و چاپ می‌کند.


کد آردوینو اکسس پوینت


 

توضیحات موردنیاز در کد کامنت شده است. در این قسمت، یک ‌رشته به نام request که از سمت کلاینت می‌آید را دریافت و چاپ می‌کنیم و رشته Hi client. I am server را به کلاینت ارسال می‌کنیم. به‌این‌ترتیب به‌ سادگی ارتباط بین دو برد را برقرار شده است. به‌جای ارسال رشته می‌توان دیتا جایگزین کرد و برای مثال در برد دیگر از دیتای سنسورهایی که به برد دیگری متصل است، دسترسی داشت و استفاده کرد.

ساخت اکسس پوینت با ESP8266 - دیجی اسپارک

 

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک   دانشجوکیت    digispark    daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

نیلوفر مهرنیا

دانشجوی کارشناسی مهندسی نرم افزار

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

۲۲ دیدگاه

  • سلام
    با تشکر از آموزش خوبتون.
    اگر دو ESP8266 یا NodeMCU دائما بهم متصل باشند و ارسال و دریافت داده داشته باشند، در دراز مدت مشکلی براشون پیش نمیاد؟ و عمر برد کوتاه نمیشه؟

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

  • سلام خسته نباشید آموزش فوق العاده ای بود
    میشه ایندفعه یه آموزش بزارید درمورد اینکه با آردوینو یچیزی بسازیم که بشه فلش رو بهش وصل کرد وبشه اطلاعات درون فلش رو از آردوینو بصورت بیسیم دریافت کرد بدون نیاز به اینترنت

    • سلام
      احتمالا در کدنویسی اشتباه کرده اید.
      لطفا کدتان را به صورت کامل، کپی و ارسال کنید تا بررسی کنم.

      • ممنونم مشکل حل شد. فقط من میخوام از اکسس پوینت به پین d1 بعنوان کلید ورودی بدم و در کلاینت در پین d1 خروجی لحظه ای بگیرم. اگه امکانش هست راهنمایی فرمایید

        • با client.print مقدار ورودی را ارسال میکنید و در کلاینت آن را به شیوه ی گفته شده دریافت و استفاده میکنید.

            • نمیدانم از پین D1 میخواهید چه چیزی را بگیرید اما هر چه هست مقدار آن را داخل متغیری مثلا به نام x میریزید و سپس با (client.print(x آن را برای کلاینت ارسال میکنید و در کلاینت به روش گفته شده آن مقدار را خوانده و هر جا که نیاز دارید استفاده میکنید.
              موفق باشید 🙂

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

    • سلام ممنونم
      اینکار را انجام نداده ام اما شنیده ام با استفاده از مود زیر میتواند هم اکسس پوینت و هم کلاینت باشد:
      WiFi.mode(WIFI_AP_STA);