آموزش توسعه برنامه IoT با ESP32 با استفاده از ESP-IDF - آخرین آپدیت

IoT Application Development with the ESP32 Using the ESP-IDF

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: توسعه یک برنامه مبتنی بر WiFi بر روی ESP32 و اشتراک/انتشار پیام‌های MQTT در AWS IoT با استفاده از ESP-IDF و FreeRTOS نحوه توسعه برنامه‌های مبتنی بر WiFi در ESP32 با استفاده از ESP-IDF یکپارچه سازی کتابخانه اجزا و حسگرها، که امکان یکپارچه‌سازی آسان حسگرها را فراهم می‌کند. و سایر اجزای پروژه های خود ESP AWS IoT را در ESP32 پیکربندی کنید تا اتصال ابری AWS IoT را فعال کنید. انتشار/اشتراک پیام های AWS IoT Core MQTT و آزمایش با استفاده از سرویس گیرنده تست MQTT به سرعت و به راحتی پروژه های ESP-IDF (Espressif IoT Development Framework) را با استفاده از راه اندازی کنید. Espressif IDE مبتنی بر Eclipse برنامه‌های توسعه‌پذیر و ماژولار در ESP32 با استفاده از ESP-IDF توسعه برنامه‌ای با WiFi، سرور HTTP، صفحه وب، ذخیره‌سازی غیر فرار، به‌روزرسانی‌های میان‌افزار OTA، همگام‌سازی زمان SNTP، RGB LED، دکمه با وقفه استفاده از FreeRTOS برای مدیریت وظایف و ارتباطات بین وظایف نحوه ساخت، فلش و نظارت بر برنامه همه در نسخه IDF Eclipse نحوه توسعه یک صفحه وب ساده برای نمایش داده ها، اتصال ESP32 به یک نقطه دسترسی، قطع اتصال ESP32، آپلود سیستم عامل جدید (به روز رسانی OTA) و موارد دیگر شما یاد خواهید گرفت که چگونه از موارد اولیه FreeRTOS، مانند صف پیام، گروه های رویداد، و سمافورها استفاده کنید. عملکرد در پایان دوره، اگر می خواهید در صورت ایجاد وضعیت LED، داده های دما و رطوبت RGB LED را دریافت کنید، با استفاده از ESP-IDF با استفاده از ESP-IDF پیش نیازها: ESP32 Development Kit حسگر DHT22 احساس اطمینان خواهید کرد. رنگ ها سیم های جامپر و تخته نان برد آشنایی با زبان برنامه نویسی C

توضیحات عمومی اطلاعات پس زمینه:

در این دوره، ما با استفاده از ESP-IDF (Espressif IoT Development Framework) یک برنامه کاربردی مبتنی بر WiFi غنی از ویژگی‌ها ایجاد می‌کنیم، کتابخانه حسگرهای اجزای ESP-IDF را ادغام می‌کنیم و ESP32 را برای اتصال به AWS IoT و انتشار/اشتراک‌گذاری پیکربندی می‌کنیم. پیام ها از طریق AWS IoT Core با استفاده از پروتکل MQTT .

WiFi معمولاً در بسیاری از راه‌حل‌های IoT و IoT صنعتی گنجانده می‌شود و اساس برنامه توسعه‌یافته در این دوره است که اتصال ابری AWS IoT (یا هر چارچوب ابری سازگاری را که شما انتخاب می‌کنید) امکان‌پذیر می‌کند.

ESP32 مجموعه‌ای از میکروکنترلرهای کم‌هزینه و کم‌مصرف SoC (سیستم روی تراشه) با WiFi یکپارچه و بلوتوث دو حالته است. ESP-IDF چارچوب رسمی توسعه IoT Espressif برای ESP32 است. با استفاده از زبان های برنامه نویسی مانند C و C++، یک SDK (کیت توسعه نرم افزار) خودکفا را برای هر توسعه برنامه عمومی ارائه می دهد. ESP-IDF در حال حاضر میلیون‌ها دستگاه را در این زمینه نیرو می‌دهد و ساخت انواع محصولات متصل به شبکه، از لامپ‌های ساده و اسباب‌بازی‌ها گرفته تا لوازم بزرگ و دستگاه‌های صنعتی را امکان‌پذیر می‌سازد.

ESP-IDF FreeRTOS را اجرا می‌کند، که به طور گسترده در سیستم‌های جاسازی شده استفاده می‌شود، بنابراین تکنیک‌ها و دانشی که هنگام توسعه برنامه‌های مبتنی بر IDF برای ESP32 به دست می‌آورید، در صورت استفاده از سایر MCU‌هایی که FreeRTOS را اجرا می‌کنند، به خوبی ترجمه می‌شوند. علاوه بر این، هسته FreeRTOS ESP-IDF برای پشتیبانی چند هسته ای اصلاح شده است و ما در این دوره از هر دو هسته ESP32 استفاده خواهیم کرد.

اگر علاقه مند به کار با ESP32 هستید و در مورد بهبود مهارت های توسعه نرم افزار تعبیه شده خود در حین آشنایی با این SoC باورنکردنی جدی هستید، در این صورت استفاده مستقیم از قابلیت های ESP-IDF راهی عالی است.

IDF به خوبی طراحی شده است، و هنگامی که شما شروع به کار کردید، پیاده سازی ویژگی های جدید به یک نسیم تبدیل می شود. علاوه بر این، هرگونه به‌روزرسانی، رفع اشکال یا تغییر در ESP-IDF می‌تواند بلافاصله به روشی انعطاف‌پذیر و بدون نیاز به منتظر ماندن برای نوشتن پورت آردوینو در دسترس شما قرار گیرد.

درباره دوره:

برای بسیاری، بهترین راه برای یادگیری شروع با یک پروژه است، به همین دلیل است که در این دوره، یک برنامه قوی مبتنی بر WiFi ایجاد کرده ام که می تواند به یک چارچوب ابری (در این مورد AWS IoT) متصل شود. به عنوان یک ابزار یادگیری - برخلاف نمایش نمونه های کوچکی که می توانید به راحتی آنلاین پیدا کنید.

نتیجه در نظر گرفته شده از این دوره، این است که با استفاده از ESP-IDF برنامه ها را توسعه دهید، بینش را از کد برنامه کسب کنید، برای پروژه های خود الهام بگیرید و در نهایت، در زمان خود در یادگیری استفاده از اجزای مختلف ESP صرفه جویی کنید. -IDF.

با کار بر روی این پروژه، برنامه نویسی گام به گام در هر درس، مطمئن هستم که با توسعه یک برنامه کاربردی مبتنی بر WiFi قابل توسعه و یکپارچه سازی یک چارچوب ابری با استفاده از ESP-IDF یا هر برنامه کاربردی با استفاده از ESP-IDF، از آنجایی که نحوه ایجاد یک برنامه اقدام در هنگام استفاده از چارچوب توسعه اینترنت اشیاء Espressif - با استفاده از اسناد Espressif، جستجوی مرجع API و توابع مربوطه، و اعمال آنچه که برای دستیابی به اهدافتان منطقی است، آشکار خواهد شد.

علاوه بر این، در این دوره ما روی تئوری تمرکز نخواهیم کرد زیرا این یک دوره برنامه نویسی کاربردی کاربردی است که شما با انجام آن یاد می گیرید. با این حال، من به طور خلاصه اطلاعات پس زمینه ای در مورد رابط برنامه نویسی برنامه ESP-IDF که برای هر بخش اعمال می شود و یک مرور مختصر از الزامات برنامه برای هر بخش ارائه خواهم کرد. این مرورهای کلی آنچه را که انجام خواهد شد و نحوه انجام آن با استفاده از ESP-IDF را شرح می‌دهد.

در نهایت، من تصمیم گرفتم این پروژه را با استفاده از پلاگین ESP-IDF Eclipse (یا Espressif IDE) توسعه دهم که برای Windows، MacOS و Linux در دسترس است و یک نصب همه‌جانبه شامل Eclipse IDE ارائه می‌کند. و تمام پیش نیازهای مورد نیاز برای توسعه ESP32؛ ما را قادر می سازد برنامه نویسی، فلش کردن و نظارت بر ESP32 را مستقیماً پس از نصب شروع کنیم. فرآیند راه اندازی بسیار آسان و کارآمد است، به خصوص برای کاربران ویندوز...

سایر نکات قابل توجه:

سبک برنامه نویسی مدولار استفاده شده است.

از هر دو هسته ESP32 استفاده کنید و کارها را با استفاده از xTaskCreatePinnedToCore ایجاد کنید.

از صف های پیام FreeRTOS برای ارتباط بین وظیفه استفاده کنید.

و، سمافور باینری FreeRTOS برای سیگنال دهی از روال سرویس وقفه (ISR).

دستگاه حالت در برنامه WiFi امکان رشد و سفارشی سازی آینده را فراهم می کند.

از فضای ذخیره‌سازی غیر فرار برای ذخیره و بارگیری اطلاعات کاربری WiFi برای اتصال ESP32 استفاده کنید.

یک گردش کار کارآمد برای توسعه سرور HTTP و صفحه وب بیاموزید.

با ارسال فایل به‌روزرسانی از طریق یک صفحه وب به ESP32، نحوه پیاده‌سازی به‌روزرسانی میان‌افزار OTA (از طریق هوا) را از طریق WLAN بیاموزید.

با نحوه ادغام یک چارچوب ابری آشنا شوید - ما چارچوب ESP AWS IoT را برای فعال کردن ارتباط با AWS IoT Core یکپارچه خواهیم کرد.

با نحوه انتشار داده‌ها (مانند دما، رطوبت و WiFi RSSI) از ESP32 به AWS IoT با استفاده از پروتکل MQTT آشنا شوید.

با نحوه اشتراک داده‌های انتشار در داشبورد AWS و از آن آشنا شوید.

با نحوه ادغام یک کتابخانه حسگر اجزای ESP-IDF آشنا شوید.

سخت افزار:

- ESP32 DevKit

- LED و مقاومت RGB

- سنسور DHT22 یا هر حسگر(های) دیگری از کتابخانه سنسورهای اجزای ESP-IDF

- سیم های جامپر

- تخته نان

نرم افزار:

- ESP-IDF Eclipse (Espressif IDE)

ما از Google Chrome برای آزمایش عملکرد صفحه وب استفاده خواهیم کرد


سرفصل ها و درس ها

معرفی Introduction

  • مقدمه تفصیلی دوره Detailed Course Introduction

  • سخت افزار و نرم افزار مورد نیاز Hardware & Software Requirements

  • ساختار دوره Course Structure

سخت افزار Espressif: ESP32 DevKits Espressif Hardware: ESP32 DevKits

  • ESP32 DevKits ESP32 DevKits

راه اندازی محیط توسعه و سیستم ساخت ESP-IDF و نمای کلی CMake Development Environment Setup, and ESP-IDF Build System & CMake Overview

  • نصب Eclipse (Espressif IDE). Eclipse (Espressif IDE) Installation

  • سیستم ساخت ESP-IDF و نمای کلی CMake ESP-IDF Build System & CMake Overview

  • راه اندازی الگوی پروژه Eclipse Eclipse Project Template Setup

دروس تکمیلی Supplemental Lessons

  • پروژه های نمونه ESP-IDF ESP-IDF Example Projects

  • ESP-IDF FreeRTOS ESP-IDF FreeRTOS

  • مدیریت خطاهای ESP-IDF ESP-IDF Error Handling

  • سبک کدنویسی جاسازی شده C Embedded C Coding Style

کتابخانه اجزا و حسگرها (اختیاری) Components & Sensors Library (Optional)

  • بررسی اجمالی کتابخانه اجزا و حسگرها Components & Sensors Library Overview

  • ادغام کتابخانه اجزا و حسگرها و مثال BME 680 Components & Sensors Library Integration and BME 680 Example

کد منبع دوره Course Source Code

  • مخزن گیت Git Repository

LED وضعیت برنامه RGB RGB Application Status LED

  • نمای کلی پیاده سازی RGB LED RGB LED Implementation Overview

  • برنامه نویسی RGB LED RGB LED Programming

برنامه وای فای WiFi Application

  • بررسی اجمالی پیاده سازی WiFi WiFi Implementation Overview

  • برنامه نویسی برنامه وای فای قسمت اول WiFi Application Programming Part I

  • برنامه نویسی برنامه وای فای قسمت دوم WiFi Application Programming Part II

  • برنامه نویسی برنامه وای فای قسمت سوم WiFi Application Programming Part III

  • تست برنامه وای فای WiFi Application Testing

سرور HTTP HTTP Server

  • بررسی اجمالی اجرای سرور HTTP HTTP Server Implementation Overview

  • برنامه نویسی سرور HTTP قسمت اول HTTP Server Programming Part I

  • برنامه نویسی سرور HTTP قسمت دوم HTTP Server Programming Part II

  • برنامه نویسی سرور HTTP قسمت سوم HTTP Server Programming Part III

  • برنامه نویسی سرور HTTP قسمت چهارم HTTP Server Programming Part IV

به روز رسانی سیستم عامل OTA OTA Firmware Update

  • بررسی اجمالی اجرای به روز رسانی سیستم عامل OTA OTA Firmware Update Implementation Overview

  • OTA Firmware Update Programming Part I OTA Firmware Update Programming Part I

  • OTA Firmware Update Programming Part II OTA Firmware Update Programming Part II

  • تست به روز رسانی سیستم عامل OTA OTA Firmware Update Testing

سنسور DHT22 DHT22 Sensor

  • بررسی اجمالی اجرای سنسور DHT22 DHT22 Sensor Implementation Overview

  • برنامه نویسی سنسور DHT22 قسمت اول DHT22 Sensor Programming Part I

  • برنامه نویسی سنسور DHT22 قسمت دوم DHT22 Sensor Programming Part II

پیاده سازی اتصال وای فای WiFi Connect Implementation

  • بررسی اجمالی اجرای اتصال WiFi WiFi Connect Implementation Overview

  • برنامه نویسی WiFi Connect قسمت اول WiFi Connect Programming Part I

  • برنامه نویسی WiFi Connect قسمت دوم WiFi Connect Programming Part II

  • برنامه نویسی WiFi Connect قسمت سوم WiFi Connect Programming Part III

نمایش اطلاعات اتصال WiFi در صفحه وب Displaying WiFi Connection Information on the Web Page

  • نمایش اطلاعات اتصال WiFi: برنامه نویسی صفحه وب Displaying WiFi Connection Information: Web Page Programming

  • نمایش اطلاعات اتصال WiFi: برنامه نویسی سرور HTTP Displaying WiFi Connection Information: HTTP Server Programming

دکمه قطع وای فای WiFi Disconnect Button

  • برنامه نویسی دکمه قطع وای فای WiFi Disconnect Button Programming

ذخیره سازی غیر فرار (NVS) Non-Volatile Storage (NVS)

  • مروری بر پیاده سازی ذخیره سازی غیر فرار (NVS). Non-Volatile Storage (NVS) Implementation Overview

  • برنامه نویسی ذخیره سازی غیر فرار (NVS) قسمت اول Non-Volatile Storage (NVS) Programming Part I

  • بخش دوم برنامه نویسی ذخیره سازی غیر فرار (NVS). Non-Volatile Storage (NVS) Programming Part II

دکمه با وقفه و سمافور Button with Interrupt & Semaphore

  • نمای کلی دکمه تنظیم مجدد WiFi WiFi Reset Button Overview

  • برنامه نویسی دکمه تنظیم مجدد WiFi WiFi Reset Button Programming

همگام سازی زمان SNTP SNTP Time Synchronization

  • بررسی اجمالی همگام سازی زمان SNTP SNTP Time Synchronization Overview

  • برنامه نویسی همگام سازی زمان SNTP قسمت اول SNTP Time Synchronization Programming Part I

  • برنامه نویسی همگام سازی زمان SNTP قسمت دوم SNTP Time Synchronization Programming Part II

  • SNTP Time Synchronization Programming Part III SNTP Time Synchronization Programming Part III

نمایش SSID نقطه دسترسی ESP32 در صفحه وب Displaying the ESP32's Access Point SSID on the Web Page

  • نمایش برنامه نویسی AP SSID Displaying AP SSID Programming

AWS IoT AWS IoT

  • بررسی اجمالی پیاده سازی AWS IoT AWS IoT Implementation Overview

  • مکمل فنی AWS IoT: MQTT، mTLS، AWS Security & Policies و JSON AWS IoT Technical Supplement: MQTT, mTLS, AWS Security & Policies, and JSON

  • AWS IoT Configuration & MQTT اشتراک/نمونه انتشار AWS IoT Configuration & MQTT Subscribe/Publish Example

  • AWS IoT MQTT انتشار/اشتراک نمونه بررسی و به‌روزرسانی کد AWS IoT MQTT Publish/Subscribe Example Code Review & Update

  • AWS IoT با استفاده از نمونه به روز شده SDK MQTT AWS IoT Using the Updated SDK MQTT Example

نمایش نظرات

آموزش توسعه برنامه IoT با ESP32 با استفاده از ESP-IDF
جزییات دوره
9 hours
55
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,945
4.4 از 5
دارد
دارد
دارد
Kevin Aguilar
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Kevin Aguilar Kevin Aguilar

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