راهنمای کامل NodeMCU – صفر تا صد

NodeMCU پلتفرم سورس بازی برمبنای اینترنت اشیا است. بیشتر برد های NodeMCU بر پایه ی ESP8266 هستند. به صورت خلاصه برنامه ریزی ماژول ESP8266 دارای پیچیدگی ها و سختی های زیادی است که برای افراد تازه کار چندان مناسب نیست. کاری که NodeMCU انجام داده است، آسان سازی برنامه ریزی و برنامه نویسی مرتبط با ESP8266 است. در این آموزش به صفر تا صد NodeMCU می پردازیم.

بردی که در تصویر مشاهده می کنید "NodeMCU DEVKIT 1.0" نام دارد. این برد در دو نسخه ی CP2102 و CH340g ارائه می شود که به صورت خلاثه تفاوت آنچنانی با هم ندارند، تنها تفاوت مبدل USB به UART روی برد است و هنگام نصب درایور های هر کدام باید به این چیپ توجه داشت. این برد دارای ورودی USB، رگولاتور AMS1117 3.3v، چیپ CP2102 یا CH340g، هجده پین خروجی/ورودی (D0-D8,RX,TX,A0,SD0-SD3,CMD,CLK) و پروتکل های SPI، I2C و سریال است.

برای کار با NodeMCU نیازمند نرم افزار Arduino و نصب پکیج مرتبط با این برد هستیم. در صورتی که نرم افزار Arduino را نصب نکرده اید، اینجا کلیک کنید. بعد از دانلود نرم افزار، آن را نصب و سپس باز کنید. بعد از اجرای کامل نرم افزار از تب File گزینه ی Prefrences Ctrl+Comma را انتخاب نمایید.(رنگ و ظاهر نرم افزار شما با تصاویر متفاوت خواهد بود.)

 

بعد از باز شدن صفحه ی Preferences داخل کادر Additional Boards Manager URLs مقدار "http://arduino.esp8266.com/stable/package_esp8266com_index.json" را وارد کنید و سپس روی OK کلیک کنید.

 

حال از تب Tools گزینه ی Board و سپس …Board Manager را انتخاب کنید.

 

در صفحه ی باز شده "esp8266" را تایپ کنید و سپس آخرین نسخه را نصب کنید. (کمی صبور باشید، حجم پکیج حدودا ۵۰۰ مگابایت است.)

 

در پایان نصب همانند تصویر نسخه ی نصب شده نمایش داده خواهد شد. بر روی Close کلیک کنید. هم اکنون دسترسی شما به برد های مبنی بر ESP8266 در برنامه ی Arduino فراهم شده است. با ادامه ی آموزش همراه باشید، جزئیات برد را فرا گیرید و نمونه ی ارائه شده را امتحان کنید.

 

تا کنون ما برد هایی که برپایه ی ESP8266 هستند را به برنامه ی Arduino اضافه کردیم، تصویر زیر جزئیات پین های ورودی و خروجی برد "NodeMCU DEVKIT 1.0" را نشان می دهد. در این مرحله از کار قصد داریم تا با استفاده از این برد، یک LED و یک مقاومت کدی را بنویسیم که LED را برای مدت مشخصی روشن، سپس برای مدت مجددی خاموش کند و در نهایت این چرخه را ادامه دهد. (Blink)

 

در برنامه ی Arduino از تب Tools تنظیمات مربوط به برد خودتان را انتخاب کنید.(این مقادیر مرتبط با برد شماست.)

 

حال به Sketch زیر توجه نمایید. جزئیات لازم داخل Sketch به فارسی روان ذکر شده است. دانلود اسکچ

/*

AK NodeMCU Blink

*/

 

// در قسمت Setup مواردی را تعریف می کنیم که با شروع فعالیت برد نیامند آن ها هستیم.

void setup() {

 // در اینجا پین D1 را به صورت خروجی تعریف می کنیم.

 pinMode(D1, OUTPUT);

}

 

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

void loop() {

 // پین D1 را به صورت HIGH یا ولتاژ دار در بیار

 digitalWrite(D1, HIGH);

 // هزار میلی ثانیه یا یک ثانیه این کار را انجام بده و سپس فرمان بدی را انجام بده

 delay(1000);

 // پین D1 را صورت LOW یا بدون ولتاژ در بیار

 digitalWrite(D1, LOW);

 // هزار میلی ثانیه یا یک ثانیه این کار را انجام بده و سپس فرمان بدی را انجام بده

 delay(1000);

 // از آنجایی که در ادامه ی کار فرمانی وجود ندارد، فرمان بعدی همان اولین فرمان Loop خواهد بود

}

 

اکنون زمان آن رسیده که اسکچ مورد نظر را روی برد خودتان آپلود و آن را امتحان نمایید. برای این کار روی دکمه ی Upload کلیک کنید. نرم افزار Arduino برنامه ی شما را Verify خواهد کرد و در صورتی که مشکلی وجود نداشته باشد، آپلود آن را شروع خواهد کرد. در قسمت پایینی نرم افزار Arduino جزئیات آپلود اسکچ شما نمایش داده خواهد شد.

 

در زیر ویدیوی مختصری از روشن شدن LED برای یک ثانیه و سپس خاموش شدن LED برای یک ثانیه و تکرار فرایند را مشاهده خواهید کرد.

 

در اینجا آموزش ما به پایان رسیده است؛ با توجه به جزئیاتی که در این آموزش بیان شد، شما می توانید با استفاده از برد NodeMCU و برنامه ی آردوینو اقدام به کدنویسی و اجرای کد های خودتان کنید. این برد دارای هسته ی ESP8266 است یعنی این برد دارای ارتباط WiFi به صورت onboard است. شما میتوانید از این ویژگی در پروژه های بسیار زیادی استفاده کنید. از طریق وب چراغی را خاموش/روشن کنید، وسلیه ای را کنترل کنید، دمای محیط را به نمایش بگذارید و … .