Setting up ESP32 BlueTooth “BLE”

Published on

Category

تکنولوژی BLE مربوط به بلوتوث بوده و کاربردهای مختلفی دارد. این تکنولوژی علاوه بر مصرف انرژی بهینه، سرعت تبادل قابل توجهی دارد. در این آموزش قصد داریم به بررسی تکنولوژی BLE در بردهای ESP32 بپردازیم همچنین دو پروژه با این محوریت انجام خواهیم داد. در ادامه مفاهیم مربوط به BLE و نحوه راه اندازی و استفاده از آن در بردهای ESP32 را شرح خواهم داد. برای آموزش های بیشتر به CiferTech مراجعه کنید، همچنین برای حمایت از من حتما پیج من در اینستاگرام را دنبال کنید. ^-^

شروع کار با BLE در برد ESP32


بلوتوث BLE کم‌مصرف


تکنولوژی بلوتوث BLE با عنوان Bluetooth4.0 در سال 2001 برای اولین بر معرفی شد و از نظر کلی تفاوتی که با مفهوم پیشین بلوتوث دارد، مصرف توان کمتر می باشد. بلوتوث BLE بیشترین استفاده را در اینترنت اشیا دارد زیرا در دیوایس های اینترنت اشیا یکی از چالش های موجود مصرف توان دستگاه ها می باشد که می توان برای مدت طولانی در یک مکان ثابت با یک باتری از آن ها استفاده کرد؟! خب BLE با این نظر که اگر تبادل اطلاعاتی صورت نگیرد در واقع غیر فعال یا خاموش می شود توان بسیار کمتری مصرف می کند و با یک باتری تا چندین ماه قابل استفاده خواهد بود.

شروع کار با BLE در برد ESP32

معماری بلوتوث BLE کم مصرف

۱- لایه کاربرد یا APPS این لایه شامل منطق، رابط کاربری و مدیریت داده می‌شود.

۲- لایه HOST عبارتست از

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

۳- لایه کنترل‌کننده “Controller” عبارتست از

  • رابط کنترل‌کننده هاست
  • لایه ارتباط
  • لایه فیزیکی

شروع کار با BLE در برد ESP32


بلوتوث Bluetooth


بلوتوث (Bluetooth) نام یک استاندارد فناوری بی‌سیم با برد کم برای فرستادن پیام، عکس یا هر اطلاعات دیگر است که از لقب یک پادشاه منطقه اسکاندیناوی به نام هارالد بلاتند گرفته شده‌ است. ارتباط ماژول های بلوتوث با فرکانس‌های رادیویی صورت می پذیرد، هر ماژول بلوتوث دارای یک تراشه فرستنده یا گیرنده مربعی‌شکل است که در باند فرکانسی GHz ۲٫۴ تا GHz ۲٫۴۸ کار می‌کند. این فرکانس از این لحاظ انتخاب شده، که در سراسر جهان به‌طور رایگان در دسترس است و محدودیت‌های داشتن مجوز را ندارد.

شروع کار با BLE در برد ESP32


برد ESP32 با بلوتوث BLE


تراشه ESP32 نسل پیشرفته ESP8266 است. یکی از تفاوت‌های آن بلوتوث داخلی‌اش است. همچنین دارای هسته وایفای ۲,۴ گیگا هرتزی و بلوتوث داخلی تولید شده با تکنولوژی ۴۰ نانومتری شرکت TSMC است. این ماژول دارای بهترین پرفورمنس در مصرف انرژی بوده و با کمترین مصرف انرژی بهترین نتیجه را برای ما به همراه دارد. اگر بخواهیم دقیق‌تر به این برد نگاه کنیم باید بگوییم، یک chip است که پلتفرم NodeMCU در اون پیاده سازی شده که به این نوع چیپ‌ها System on a chip microcontrollers هم گفته می‌شود. دارای چندین پایه GPIO برای ارتباط با سخت افزارهای مختلف است. در زیر نمایی از این برد خارق العاده را مشاهده می‌کنید.

وب سرور ESP32: مانیتورینگ دما با سنسور DHT22


شرح پروژه بلوتوث BLE


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

برد ESP32 با بلوتوث BLE - دیجی اسپارک


نصب افزونه ESP32 در Arduino IDE


در این آموزش از برد ESP32 استفاده می کنیم، در ادامه مراحل را برای نصب این برد در نرم افزار آردوینو دنبال کنید:

  • ابتدا در نرم افزار Arduino IDE به مسیر FilePreferences بروید.
  • لینک زیر را در بخش مشخص شده قرار دهید.

  • سپس به مسیر Tools > Board > Boards Manager بروید.
  • در بخش board manager  کلمه ESP32  را سرچ کنید و بر روی install  کلیک کنید.

مثال 1 : دیوایس BLE


با آپلود این کد در برد ESP32، در واقع یک دیوایس BLE قابل شناسایی توسط سایر دستگاه ها ساخته ایم که اولین گام برای کار با BLE می باشد.

  • در نهایت ESP32 شما در جستجوی دستگاه های دیگر به شکل زیر به نمایش در خواهد آمد.

شناخت دستگاه‌های بلوتوث BLE در سریال مانیتور آردوینو - دیجی اسپارک


مثال 2 : اسکن دیوایس های BLE اطراف


در این مثال پس از آپلود کد و باز کردن سریال مانیتور در Arduino IDE، مک آدرس دستگاه های BLE اطراف برای شما به نمایش در خواهند آمد همچنین اطلاعی مانند نام دستگاه و قدرت ارسال سیگنال نیز در دسترس خواهد بود.

  • در این قسمت کتابخانه های مورد نیاز را به کد اضافه کرده ایم.

  • در این قسمت متغیر های مورد نیاز را تعریف می کینم.

  • کد کامل پروژه

  • پس از آپلود کد و باز کردن سریال مانیتور در نرم افزار Arduino IDE، نتیجه به شکل زیر خواهد بود.

اتصال به گجت‌های مختلف با بلوتوث BLE برد ESP32 - دیجی اسپارک


وسایل مورد نیاز


برد ESP32 با بلوتوث و وای فای


جمع بندی


بی شک تکنولوژی BLE یکی از تاثیر گذاترین راه های ارتباطی در اینترنت اشیا می باشد که بدلیل مصرف توان بسیار محدود می تواند بسیار کاربردی و مفید برای پروژه های iot ما باشد.