تصویر شاخص پروژه نهایی پایش محیط با آردوینو

جلسه 25: پروژه نهایی پایش محیط و داشبورد – ESP32

در جلسهٔ 25 دورهٔ آموزش ESP32 به سراغ «پروژه نهایی پایش محیط و داشبورد» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: ترکیب حسگر، Wi-Fi، JSON یا MQTT، ذخیره تنظیم و مدیریت خطا. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با پروژه نهایی پایش محیط و داشبورد
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Immagine del termometro digitale.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید ترکیب حسگر، Wi-Fi، JSON یا MQTT، ذخیره تنظیم و مدیریت خطا را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

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

اصل فنی به زبان ساده

ترکیب حسگر، Wi-Fi، JSON یا MQTT، ذخیره تنظیم و مدیریت خطا. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با پروژه نهایی پایش محیط و داشبورد
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 SH1106 Power-Meter 01.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «بلوک‌ها را جدا آزمایش و سپس داده و وضعیت اتصال را روی LAN نمایش دهید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

بلوک‌ها را جدا آزمایش و سپس داده و وضعیت اتصال را روی LAN نمایش دهید. بار اول از یک وضعیت ساده و بدون قطعات اضافی شروع کنید. بار دوم مقدار ورودی یا شرط آزمایش را تغییر دهید تا تفاوت نتیجه را ببینید. بار سوم همان آزمایش را بعد از قطع و وصل تغذیه تکرار کنید؛ پایداری رفتار از یک مشاهده تصادفی ارزشمندتر است. هنگام تغییر تنظیمات برنامه، نام فایل و تاریخ آزمایش را ثبت کنید تا نسخه‌های مختلف با هم اشتباه نشوند.

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با پروژه نهایی پایش محیط و داشبورد
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP M2 dev board szdoit IMGP2944 smial wp.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «پروژه نهایی پایش محیط و داشبورد» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

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

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

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

جلسه 23: ثبت رویداد، خطا و بازاتصال – ESP32

در جلسهٔ 23 دورهٔ آموزش ESP32 به سراغ «ثبت رویداد، خطا و بازاتصال» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: وضعیت Wi-Fi، زمان‌سنج بازاتصال، گزارش رویداد و رفتار هنگام قطعی. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با ثبت رویداد، خطا و بازاتصال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — RelayArduinoTest.jpg. این تصویر نقشه اتصال نیست.

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

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «ثبت رویداد، خطا و بازاتصال» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

وضعیت Wi-Fi، زمان‌سنج بازاتصال، گزارش رویداد و رفتار هنگام قطعی. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با ثبت رویداد، خطا و بازاتصال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «قطع شبکه را شبیه‌سازی و بازگشت برنامه را بررسی کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

قطع شبکه را شبیه‌سازی و بازگشت برنامه را بررسی کنید. بار اول از یک وضعیت ساده و بدون قطعات اضافی شروع کنید. بار دوم مقدار ورودی یا شرط آزمایش را تغییر دهید تا تفاوت نتیجه را ببینید. بار سوم همان آزمایش را بعد از قطع و وصل تغذیه تکرار کنید؛ پایداری رفتار از یک مشاهده تصادفی ارزشمندتر است. هنگام تغییر تنظیمات برنامه، نام فایل و تاریخ آزمایش را ثبت کنید تا نسخه‌های مختلف با هم اشتباه نشوند.

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با ثبت رویداد، خطا و بازاتصال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 (30258172944).jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

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

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «ثبت رویداد، خطا و بازاتصال» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص عیب‌یابی، کتابخانه‌ها و آماده‌سازی پروژه

جلسه 24: ESP-IDF و تفاوت آن با Arduino core – ESP32

در جلسهٔ 24 دورهٔ آموزش ESP32 به سراغ «ESP-IDF و تفاوت آن با Arduino core» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: اجزای پروژه ESP-IDF، مدیریت وابستگی و دلیل انتخاب چارچوب. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با ESP-IDF و تفاوت آن با Arduino core
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Servo and arduino.jpg. این تصویر نقشه اتصال نیست.

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

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «ESP-IDF و تفاوت آن با Arduino core» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

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

عکس قطعه مرتبط با ESP-IDF و تفاوت آن با Arduino core
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 on Lolin32 Lite clone board.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «ساختار یک پروژه رسمی ESP-IDF را با اسکچ آردوینو مقایسه کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

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

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با ESP-IDF و تفاوت آن با Arduino core
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP-32 Camera.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «ESP-IDF و تفاوت آن با Arduino core» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «ESP-IDF و تفاوت آن با Arduino core» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص کنترل موتور DC با درایور

جلسه 22: امنیت ارتباط و نگهداری رازها – ESP32

در جلسهٔ 22 دورهٔ آموزش ESP32 به سراغ «امنیت ارتباط و نگهداری رازها» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: TLS، اعتبارسنجی گواهی، جداسازی رمزها از کد عمومی و به‌روزرسانی. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با امنیت ارتباط و نگهداری رازها
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Temperature sensor.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید TLS، اعتبارسنجی گواهی، جداسازی رمزها از کد عمومی و به‌روزرسانی را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «امنیت ارتباط و نگهداری رازها» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

TLS، اعتبارسنجی گواهی، جداسازی رمزها از کد عمومی و به‌روزرسانی. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با امنیت ارتباط و نگهداری رازها
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Espressif ESP-WROOM-32 Wi-Fi & Bluetooth Module.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «راه ارتباط رمزگذاری‌شده را با سرور آزمایشی بررسی کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

راه ارتباط رمزگذاری‌شده را با سرور آزمایشی بررسی کنید. بار اول از یک وضعیت ساده و بدون قطعات اضافی شروع کنید. بار دوم مقدار ورودی یا شرط آزمایش را تغییر دهید تا تفاوت نتیجه را ببینید. بار سوم همان آزمایش را بعد از قطع و وصل تغذیه تکرار کنید؛ پایداری رفتار از یک مشاهده تصادفی ارزشمندتر است. هنگام تغییر تنظیمات برنامه، نام فایل و تاریخ آزمایش را ثبت کنید تا نسخه‌های مختلف با هم اشتباه نشوند.

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با امنیت ارتباط و نگهداری رازها
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32-S3 on paper.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «امنیت ارتباط و نگهداری رازها» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «امنیت ارتباط و نگهداری رازها» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص ذخیره تنظیمات در EEPROM

جلسه 21: حالت خواب و مدیریت انرژی – ESP32

در جلسهٔ 21 دورهٔ آموزش ESP32 به سراغ «حالت خواب و مدیریت انرژی» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: مصرف انرژی، deep sleep، بیدار شدن و محدودیت کار مداوم شبکه. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با حالت خواب و مدیریت انرژی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — DS3231 based RTC module.jpg. این تصویر نقشه اتصال نیست.

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

وسایل و آماده‌سازی

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

اصل فنی به زبان ساده

مصرف انرژی، deep sleep، بیدار شدن و محدودیت کار مداوم شبکه. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با حالت خواب و مدیریت انرژی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 Espressif ESP-WROOM-32 Dev Board (2).jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «چرخه اندازه‌گیری و خواب را طراحی و زمان بیداری را ثبت کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

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

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با حالت خواب و مدیریت انرژی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — RISC-V ESP32-C6-WROOM-1.devboard.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «حالت خواب و مدیریت انرژی» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

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

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص ثبت داده روی کارت microSD

جلسه 20: ذخیره تنظیمات پایدار – ESP32

در جلسهٔ 20 دورهٔ آموزش ESP32 به سراغ «ذخیره تنظیمات پایدار» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: فضای ذخیره کلید-مقدار Preferences، نسخه داده و کاهش نوشتن. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با ذخیره تنظیمات پایدار
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — MicroSD card connected to Arduino nano with OLED display.jpg. این تصویر نقشه اتصال نیست.

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

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «ذخیره تنظیمات پایدار» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

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

عکس قطعه مرتبط با ذخیره تنظیمات پایدار
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 Espressif ESP-WROOM-32 Dev Board.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «آستانه هشدار را فقط هنگام تغییر ذخیره و پس از ریست بازخوانی کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

آستانه هشدار را فقط هنگام تغییر ذخیره و پس از ریست بازخوانی کنید. بار اول از یک وضعیت ساده و بدون قطعات اضافی شروع کنید. بار دوم مقدار ورودی یا شرط آزمایش را تغییر دهید تا تفاوت نتیجه را ببینید. بار سوم همان آزمایش را بعد از قطع و وصل تغذیه تکرار کنید؛ پایداری رفتار از یک مشاهده تصادفی ارزشمندتر است. هنگام تغییر تنظیمات برنامه، نام فایل و تاریخ آزمایش را ثبت کنید تا نسخه‌های مختلف با هم اشتباه نشوند.

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با ذخیره تنظیمات پایدار
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32-C3 RISC-V NodeMCU board.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «ذخیره تنظیمات پایدار» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «ذخیره تنظیمات پایدار» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص ارتباط I2C و یافتن نشانی ماژول

جلسه 18: SPI و نمایشگر کوچک – ESP32

در جلسهٔ 18 دورهٔ آموزش ESP32 به سراغ «SPI و نمایشگر کوچک» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: خطوط SPI، انتخاب تراشه و تنظیم کتابخانه نمایشگر. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با SPI و نمایشگر کوچک
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Electronic-Component-Potentiometer.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید خطوط SPI، انتخاب تراشه و تنظیم کتابخانه نمایشگر را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «SPI و نمایشگر کوچک» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

خطوط SPI، انتخاب تراشه و تنظیم کتابخانه نمایشگر. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با SPI و نمایشگر کوچک
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Immagine del termometro digitale.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «متن یا مقدار حسگر را در یک نمایشگر سازگار نشان دهید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

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

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با SPI و نمایشگر کوچک
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 on Lolin32 Lite clone board.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «SPI و نمایشگر کوچک» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «SPI و نمایشگر کوچک» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص ارتباط SPI و تبادل با ماژول

جلسه 19: UART و ارتباط با ماژول جانبی – ESP32

در جلسهٔ 19 دورهٔ آموزش ESP32 به سراغ «UART و ارتباط با ماژول جانبی» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: نرخ ارتباط، پایه RX و TX، سطح TTL و بافر دریافت. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با UART و ارتباط با ماژول جانبی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — OLED display.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید نرخ ارتباط، پایه RX و TX، سطح TTL و بافر دریافت را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «UART و ارتباط با ماژول جانبی» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

نرخ ارتباط، پایه RX و TX، سطح TTL و بافر دریافت. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با UART و ارتباط با ماژول جانبی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 Dev Board.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «یک پیام کوتاه از ماژول سازگار بخوانید و طول آن را کنترل کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

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

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با UART و ارتباط با ماژول جانبی
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32 SH1106 Power-Meter 01.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

خروجی RS-232 یا ۵ ولت را مستقیم به GPIO ندهید. برای عیب‌یابی، اول وجود و مقدار تغذیه را در محل برد بسنجید، بعد زمین، وضعیت کابل و انتخاب برد را بررسی کنید. پس از آن اتصالات رابط و نام پایه‌ها را با راهنمای رسمی برد تطبیق دهید. اگر پیام خطای ابزار دارید، متن دقیق پیام و تنظیمات پروژه را نگه دارید. تغییر هم‌زمان چند سیم یا چند سطر برنامه باعث می‌شود نفهمید کدام تغییر مشکل را حل کرده است.

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «UART و ارتباط با ماژول جانبی» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «UART و ارتباط با ماژول جانبی» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص وقفه خارجی و شمارش رویداد

جلسه 17: I2C و خواندن حسگر دیجیتال – ESP32

در جلسهٔ 17 دورهٔ آموزش ESP32 به سراغ «I2C و خواندن حسگر دیجیتال» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: SDA و SCL، آدرس قطعه، پول‌آپ و سطح ولتاژ. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با I2C و خواندن حسگر دیجیتال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Solderless Breadboard with LEDs.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید SDA و SCL، آدرس قطعه، پول‌آپ و سطح ولتاژ را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «I2C و خواندن حسگر دیجیتال» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

SDA و SCL، آدرس قطعه، پول‌آپ و سطح ولتاژ. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با I2C و خواندن حسگر دیجیتال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Servo and arduino.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «یک حسگر I2C سازگار را شناسایی و داده را با بررسی خطا بخوانید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

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

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با I2C و خواندن حسگر دیجیتال
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — ESP32.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «I2C و خواندن حسگر دیجیتال» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

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

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «I2C و خواندن حسگر دیجیتال» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب
تصویر شاخص خواندن حسگر دما و رطوبت

جلسه 16: Bluetooth Low Energy در ESP32

در جلسهٔ 16 دورهٔ آموزش ESP32 به سراغ «Bluetooth Low Energy در ESP32» می‌رویم. هدف این است که مفهوم را از مشاهدهٔ واقعی جدا نکنیم: نقش BLE، سرویس و characteristic و تفاوت پشتیبانی در اعضای خانواده. این مسیر برای کسی طراحی شده که می‌خواهد با برد ESP32 یک پروژه متصل، قابل توضیح و قابل آزمایش بسازد، نه اینکه فقط چند دستور را حفظ کند. هر بار نسخه دقیق قطعه و ابزار خود را ثبت کنید؛ نمونهٔ ESP32 DevKit در مواردی به دیتاشیت خودش نیاز دارد.

هدف یادگیری و پیش‌نیاز

عکس قطعه مرتبط با Bluetooth Low Energy در ESP32
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Arduino Uno board.jpg. این تصویر نقشه اتصال نیست.

پس از این جلسه باید بتوانید نقش BLE، سرویس و characteristic و تفاوت پشتیبانی در اعضای خانواده را با زبان خود توضیح دهید، یک آزمون کوچک طراحی کنید و نتیجه را با انتظار مقایسه کنید. پیش‌نیاز شما شناخت پایه‌های تغذیه، روش خاموش‌کردن امن منبع و توانایی خواندن نقشه پایه‌ها از دیتاشیت است. اگر یکی از این موارد را هنوز انجام نداده‌اید، ابتدا جلسه‌های قبل را مرور کنید. نام برد، نسخه برد و نوع ابزار را کنار یادداشت آزمایش بنویسید؛ این سه داده در عیب‌یابی بعدی بسیار کمک می‌کنند.

وسایل و آماده‌سازی

برد ESP32 سازگار، کابل داده USB، منبع تغذیه مناسب، بردبورد و مولتی‌متر و قطعه مرتبط با «Bluetooth Low Energy در ESP32» را آماده کنید. پیش از هر جابه‌جایی سیم، تغذیه را قطع کنید. جهت قرارگیری برد، زمین و پایه‌های GPIO مورد استفاده را بر اساس دیتاشیت همان قطعه بررسی کنید. عکس‌های این مقاله برای شناخت ظاهری‌اند و نقشه اتصال نیستند.

اصل فنی به زبان ساده

نقش BLE، سرویس و characteristic و تفاوت پشتیبانی در اعضای خانواده. در ESP32 نتیجهٔ نرم‌افزار به تنظیم برد، کتابخانه و سخت‌افزار وابسته است. اگر مدل برد یا نسخه بسته Espressif در محیط توسعه با سخت‌افزار فرق داشته باشد، برخی رابط‌ها درست کار نمی‌کنند. اگر پایه‌ای هم‌زمان برای چند وظیفه استفاده شود، باید اولویت آن‌ها را مشخص کرد. محدودهٔ ولتاژ و جریان را از جدول الکتریکی دیتاشیت بخوانید و هیچ خروجی را جای منبع تغذیه بار پرمصرف به کار نبرید. یک فرض را در هر مرحله تغییر دهید تا علت هر نتیجه معلوم بماند.

عکس قطعه مرتبط با Bluetooth Low Energy در ESP32
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — RelayArduinoTest.jpg. این تصویر نقشه اتصال نیست.

اجرای آزمایش مرحله به مرحله

  1. سؤال آزمون را بنویسید: «یک مشخصه خواندنی ساده ایجاد و با ابزار سازگار مشاهده کنید».
  2. قطعات و اتصالات را با منبع خاموش و با راهنمای همان برد آماده کنید.
  3. ولتاژ تغذیه و زمین مشترک را پیش از پروگرام اندازه بگیرید.
  4. اسکچ یا تنظیم لازم را تنها برای همین بخش اجرا کنید و ورودی را تغییر دهید.
  5. نتیجه را در جدول «ورودی، انتظار، مشاهده، توضیح» ثبت کنید.

یک مشخصه خواندنی ساده ایجاد و با ابزار سازگار مشاهده کنید. بار اول از یک وضعیت ساده و بدون قطعات اضافی شروع کنید. بار دوم مقدار ورودی یا شرط آزمایش را تغییر دهید تا تفاوت نتیجه را ببینید. بار سوم همان آزمایش را بعد از قطع و وصل تغذیه تکرار کنید؛ پایداری رفتار از یک مشاهده تصادفی ارزشمندتر است. هنگام تغییر تنظیمات برنامه، نام فایل و تاریخ آزمایش را ثبت کنید تا نسخه‌های مختلف با هم اشتباه نشوند.

چه نتیجه‌ای درست است؟

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

عکس قطعه مرتبط با Bluetooth Low Energy در ESP32
عکس قطعه مرتبط با درس؛ منبع: Wikimedia Commons — Espressif ESP-WROOM-32 Wi-Fi & Bluetooth Module.jpg. این تصویر نقشه اتصال نیست.

خطاهای رایج و روش پیدا کردن علت

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

تمرین تکمیلی و معیار ارزیابی

تمرین این جلسه آن است که آزمایش «Bluetooth Low Energy در ESP32» را یک بار با شرایط اولیه و یک بار با یک تغییر کنترل‌شده اجرا کنید. در گزارش کوتاه خود هدف، قطعات، نسخه برد، پیش‌بینی، نتیجه و علت تفاوت احتمالی را بنویسید. معیار موفقیت فقط گرفتن خروجی نیست: باید بتوانید توضیح دهید چرا نتیجه به دست آمد، کدام بخش آن را اندازه گرفتید و برای تکرار آزمون چه تنظیماتی لازم است. اگر به نتیجه نرسیدید، گزارش خطا هنوز یک خروجی آموزشی مفید است.

نکته طراحی برای پروژه واقعی

در محصول واقعی، «Bluetooth Low Energy در ESP32» باید با دیگر بخش‌ها هماهنگ شود. مصرف حافظه، زمان پاسخ، خطای اندازه‌گیری، نویز و رفتار هنگام روشن شدن دوباره را جدا بررسی کنید. پایه‌هایی که نقش جایگزین دارند را روی نقشه پروژه علامت بزنید تا هنگام افزودن نمایشگر یا ارتباط سریال تداخل ایجاد نشود. قبل از مونتاژ دائمی، یک آزمایش کوچک با همان نوع تغذیه و همان قطعات نهایی انجام دهید. عکس نمایشی قطعات جایگزین نقشه و دیتاشیت نیست.

پرسش‌های کوتاه

آیا همین مراحل برای همه نسخه‌ها یکسان است؟ خیر؛ نام دقیق برد، بسته‌بندی و دیتاشیت را ملاک بگیرید. آیا بدون ابزار اندازه‌گیری می‌توان نتیجه را تأیید کرد؟ برای بعضی رفتارها مشاهده اولیه ممکن است، اما برای ولتاژ، زمان‌بندی و خطاهای متناوب اندازه‌گیری لازم است. اگر آزمایش کار نکرد از کجا شروع کنم؟ از تغذیه و زمین و مدل برد شروع کنید و سپس پیام آپلود، نسخه کتابخانه و برنامه را بررسی کنید.

جمع‌بندی و ادامه مسیر

در این درس، «Bluetooth Low Energy در ESP32» را به یک پرسش قابل آزمون تبدیل کردیم و معیار مشاهده را مشخص کردیم. نتیجهٔ خود را با یک عکس از چیدمان قطعات، فایل کد یا تنظیمات و جدول اندازه‌گیری نگه دارید. جلسه بعد بر همین نتیجه تکیه می‌کند؛ اگر خروجی هنوز پایدار نیست، قبل از رفتن به بخش بعدی علت را پیدا کنید. پیوندهای دوره: جلسه قبل جلسه بعد.

منبع فنی: راهنمای رسمی Arduino core for ESP32 از Espressif. تفاوت مدل و نسخه بسته را بررسی کنید.

ادامه مطلب