آموزش جامع BLE

پروژه‌های عملی BLE برای شروع: LED، دماسنج، باتری و Beacon

شش پروژه ساده BLE را با ESP32 شروع کنید: کنترل LED، دماسنج، مانیتور باتری، رطوبت‌سنج، Beacon و ارسال داده به موبایل.

فهرست مطالب
عکس واقعی برد ESP32 دارای ماژول ESP-WROOM-32؛ نمونهٔ سخت‌افزار سازگار با BLE.
عکس واقعی برد ESP32 دارای ماژول ESP-WROOM-32؛ نمونهٔ سخت‌افزار سازگار با BLE. عکس: Ubahnverleih؛ منبع Wikimedia Commons؛ CC0. محتوای عکس تغییر نکرده است؛ نسخهٔ نمایشی ویکی‌مدیا استفاده شده است. این عکس مستند اجرای آزمایش LCENJ نیست.
مرحله 16 از ۲۰ مسیر تسلط بر BLE

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

کنترل LED

یک Characteristic با Write بسازید و مقدار صفر یا یک را به GPIO تبدیل کنید. طول ورودی و مقدار مجاز را بررسی کنید. وضعیت واقعی LED را با Read یا Notify برگردانید تا برنامه موبایل فقط به فرمان ارسالی اعتماد نکند.

دماسنج و رطوبت‌سنج

SHT31 را با I2C بخوانید، خطا و CRC سنسور را بررسی و داده را به عدد صحیح مقیاس‌دار تبدیل کنید. دو Characteristic یا یک Payload نسخه‌دار بسازید. Notify را فقط پس از فعال‌کردن CCCD و با نرخ منطقی بفرستید.

باتری مانیتور

ولتاژ باتری را با تقسیم مقاومتی و ADC بخوانید و کالیبراسیون کنید. درصد باتری فقط تبدیل خطی ولتاژ نیست و به شیمی سلول و بار وابسته است. برای شروع Battery Service استاندارد با Level تقریبی کافی است؛ محدودیت تخمین را در UI بنویسید.

Beacon و موبایل

یک Advertising غیرقابل اتصال با شناسه و داده کوتاه بسازید. Interval و TX Power را تغییر دهید و اثر آن را روی RSSI و زمان کشف ثبت کنید. سپس با ابزار موبایل Service و Characteristic پروژه‌های متصل را بدون نوشتن اپ اختصاصی آزمایش کنید.

ترتیب پیشنهادی اجرا

ابتدا LED را برای یادگیری Write بسازید. سپس دماسنج را برای Read و Notify اضافه کنید. بعد Battery Service و در پایان Beacon بدون اتصال را آزمایش کنید. برای هر پروژه Capture کوتاه و جدول خطا نگه دارید تا دانش مرحله‌های قبل تثبیت شود.

برای پروژه LED، معیار قبول و رد بنویسید

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

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

پرسش و پاسخ مقاله

سوال فنی خود را مطرح کنید

پرسش‌ها و پاسخ‌ها پس از بررسی مدیر منتشر می‌شوند. نویسنده، پیش‌نویس در انتظار بررسی را می‌بیند.

هنوز پرسش تاییدشده‌ای برای این مقاله ثبت نشده است.