Nodemcuپلتفرم های اینترنت اشیاسخت افزار

ESP8266

ESP8266 نام یک میکروکنترلر طراحی شده توسط Espressif Systems است. Espressif یک کمپانی چینی است که در شانگهای چین شکل گرفته است. ESP8266 از خود به عنوان یک راه حل برای ارتباطات WiFi یاد میکند، همچنین که تمام قابلیت های یک میکروکنترلر معمولی را به شما ارائه می دهد.

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

بوردهای مختلفی وجود دارند، اما دو بوردی که من در اینجا قصد تمرکز روی آنها را دارم ESP-1 و ESP-12 هستند. این نکته مهم است که بدانید فقط یک ESP8266 وجود دارد و این بورد ها همگی از آن استفاده می کنند و تنها تفاوت سیم کشی و حافظه خارجی اضافه شده برای آی سی به علاوه نوع آنتن است که برای آنها در نظر گرفته شده است. از دید برنامه نویسی برای آنها، همگی یکسان هستند.

بلوغ

ESP8266 قطعه جدیدی در حوزه خود است. عرضه شده در تابستان ۲۰۱۴ و کماکان ده ها میلیون نسخه از آن در دنیا مصرف می شود. همه کس و همه چیز باید از جایی شروع شوند. یعنی بسیاری از قابلیت ها و ایده ها و توانایی های ناشناخته در این حوزه وجود دارد که نیاز با کار دارند تا کشف شده و عملی شوند. دست پایین قضیه این است که آموزش های کافی و لازم وجود ندارند، مثال ها و ویدئو هایی که برای میکروکنترلرهای معمول به وفور یافت میشوند برای ESP8266 وجود ندارند. مستندات بسیار ناقصی از آی سی در دسترس است که بسیاری سوال های اساسی را پاسخ نمی دهند و هنوز علاقه مندان در جال اکتشاف هستند!

مشخصات

ولتاژ۳٫۳ ولت
مصرف جریان۱۰ میکرو تا ۱۷۰ میلی آمپر ( تفاوت چشمگیری است! )
اتصال حافظه Flashحداکثر ۱۶ مگابایت ( ۵۱۲ کیلوبایت بصورت عادی )
پردازندهTensilica L106 32bit
سرعت پردازنده۸۰ تا ۱۶۰ مگاهرتز
حافظه RAM۳۲ کیلو + ۸۰ کیلو بایت
GPIO ها۱۷ ( با قابلیت های دیگر هم مالتی پلکس شده اند )
آنالوگ به دیجیتال ( A2D )۱ ورودی با دقت ۱ به ۱۰۲۴
پشتیبانی ۸۰۲٫۱۱b/g/n/d/e/i/k/r
حداکثر اتصلات TCP بصورت همزمان۵

این سوال که ESP8266 چه مقدار میتواند با باتری کار کند سوال جالبی است. مصرف جریان این آی سی بسیار متفاوت است. هنگامی که در حداکثر توان کار میکند، تا ۱۷۰ میلی آمپر جریان نیاز دارد، اما زمانی که در حالت خواب عمیق – Deep Sleep – قرار دارد تنها ۱۰ میکرو آمپر جریان نیاز دارد. بسیار تفاوت چشمگیری است و متقاعد کننده است که برای محاسبه میزان حدودی و نه حتی دقیق مصرف باتری باید بیشتر به نحوه عملکرد در طول زمان توجه داشته باشیم.

ESP8266 طراحی شده تا با یک ماژول حافظه کار کند که عموما حافظه Flash هستند. بیشتر ماژول ها دارای یک حافظه فلش هستند که روی بورد تعبیه شده است. با دانستن این نکته که همه ی حافظه Flash ها تعداد خواندن/نوشتن و پاک کردن محدودی دارند، بعد از استفاده طولانی باید تعویض شوند. آنها از طرف سازندگان تضمین شده اند که ۱۰۰۰۰ بار قابل پاک کردن و برنامه ریزی مجدد باشند. این معمولا مشکلی در برنامه ریزی معمولی و تنظیمات ایجاد نمیکند، اما اگر برنامه شما به طور مداوم با Flash در حال نوشتن است پس این برای شما مسئله ساز خواهد شد و به زودی دچار مشکل می شوید.

ماژول های ESP8266

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

ESP-12

محبوبترین و قابل انعطاف ترین ماژول فعلی کنونی ESP-12 نام دارد. این ماژول بیشترین GPIO را برای استفاده ارائه می دهد و برای اتصال به برد بورد نیاز به یک Expander دارد.

ترتیب پین های خروجی esp-12 به شکل زیر است:

ESP-12 دارای یک LED آبی رنگ در بالا سمت راست خود است. این LED زمانی که ترافیک UART برقرار باشد چشمک میزند.

توضیحات پین ها:

VCC۳٫۳ ولت تغذیه
GPIO13همچنین بعنوان MOSI برای ارتباط سریال استفاده می شود
GPIO 12همچنین بعنوان MISO برای ارتباط سریال استفاده می شود
GPIO 14بعنوان Clock برای ارتباط سریال استفاده می شود
GPIO 16ورودی/خروجی معمولی
CH_PD یا EN، برای عملکرد معمولی باید High باشد
۰ – غیر فعال
۱ – فعال
ADCورودی آنالوگ به دیجیتال
REST – RSTریست خارجی
۰ – ریست
۱ – عادی
TXDارسال UART0
RXDدریافت UART0
GPIO 4ورودی/خروجی معمولی
GPIO 5ورودی/خروجی معمولی
GPIO 0در زمان شروع – boot – باید high باشد، برای بروزرسانی Flash باید low باشد
GPIO 2در زمان شروع باید high باشد
GPIO 15در زمان شروع باید low باشد برای هر دو حالت boot و flash
GNDپایه زمین

نقشه شماتیک نحوه اتصال ماژول ESP-12 برای شروع کار با ماژول

ESP-1

این ماژول یک ماژول ۸ پایه است که به راحتی به میکرو متصل می شود و بدون هیچ دردسری میتوانید به سرعت با این ماژول کار کنید. البته GPIO های بسیار کمتری در دسترس شما قرار دارند و ارتباط محدودی با خود esp8266 خواهید داشت.

شماتیک نحوه اتصال ماژول به پروگرمر FTDI ( یا اتصال مستقیم به RS232 کامپیوتر در صورت وجود )

اتصال به ESP8266

ESP8266 یک دستگاه WiFi است و ما معمولا با پروتکل های WiFi به آن متصل می شویم اما برخی تنظیمات از قبل لازم است تا انجام شوند. ESP8266 نمی داند به چه شبکه ای متصل شود، چه پسوردی را باید استفاده کند و همچنین بقیه پارامترهای دیگری که باید تعریف شوند. البته پیش فرض این است که ما به عنوان Station در شبکه WiFi هستیم. اگر بخوایم AP یا نقطه دسترسی – Access Point باشیم، داستان پیچیده تر می شود. برای تنظیم ماژول نیازمند ارتباط دیگری هستیم که آن ارتباط سریال UART است. ESP8266 یک جفت پین مجزا برای ارتباط سریال دارد و آنها RX و TX هستند. پین TX برای انتقال از ماژول و پین RX برای انتقال دیتا به ماژول استفاده می شود. این پین ها را میتوان به سیستم هدایت کننده که میتواند میکروکنترلر باشد یا کامپیوتر شخصی متصل کرد. اگر کامپیوتر شما هم مانند من پورت سریال ندارد میتوانید از مبدل های USB به سریال استفاده کنید. توجه کنید پروتکل سریال شامل پین های دیگری برای کنترل و تست ارتباط هم هست ولی برای ارتباط با ماژول تنها ۲ پین RX و TX به علاوه پین GND استفاده می شود.

برنامه ریزی ماژول توسط دستورات AT یا AT Commands صورت میگیرد که یک استاندارد است و میتوانید مشابه این دستورات را در ماژول های دیگر ارتباط سریال مانند SIM900 ببینید.

نکته مهم دیگر نرخ انتقال دیتا است که معمولا ۱۱۵۲۰۰ است، اگر نبود ۹۶۰۰ را امتحان کنید.

منبع
zaxis
برچسب ها
نمایش بیشتر

نوشته های مشابه

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

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

دکمه بازگشت به بالا
بستن