- 📡 StandardFirmataPishiAi برای آردوینو با ماژولهای اکسترنال BLE یا سریال
- 🌟 مرور کلی
- 📥 دانلود StandardFirmataPishiAi
- 🔀 حالتهای ارتباطی
- 🚀 مراحل نصب
- 🔌 راهنمای سیمکشی برای ماژولهای اکسترنال
- 🔗 اتصال آردوینو به اسکرچ
- 🧱 بلوکهای محافظت پینهای Serial/BLE
- 📝 سفارشیسازی
- 🔧 عیبیابی
- ⚡ نکات عملکردی
- 🎮 پروژههای نمونه
- 🔒 نکات ایمنی
- 🧪 اطلاعات فنی
- 📚 اطلاعات بیشتر
📡 StandardFirmataPishiAi برای آردوینو با ماژولهای اکسترنال BLE یا سریال #
StandardFirmataPishiAi نسخه اصلاحشده StandardFirmata است که توسط Pishi.ai ایجاد شده است.
این برنامه به بردهای آردوینو امکان اتصال به اسکرچ را با استفاده از یکی از روشهای زیر میدهد:
- BLE از طریق مرورگر هنگام استفاده از ماژولهای اکسترنال BLE-UART
- USB از طریق مرورگر هنگام استفاده از پورت USB داخلی آردوینو یا آداپتورهای USB/سریال اکسترنال
این فرمور برای بردهایی که خودشان BLE ندارند یا برای کاربرانی که میخواهند از ماژولهای BLE اکسترنال یا سریال استفاده کنند، ایدهآل است.
ماژولهای BLE پشتیبانیشده شامل HM-10 ، HM-11 ، JDY-08 ، JDY-10 ، JDY-23 ، JDY-24 و سایر ماژولهای BLE-UART هستند.
🌟 مرور کلی #
- ارتباط سریال یا BLE: از ماژولهای BLE-UART و ماژولهای سریال استاندارد UART پشتیبانی میکند.
- محافظت انعطافپذیر از پینها: از پینهای RX/TX انتخابشده برای ارتباط محافظت میکند.
- حالتهای چندگانه: USB داخلی، سریال نرمافزاری یا UART چند سختافزاری.
- سیمی یا بیسیم: برای پروژههای سیمی از USB و برای پروژههای بیسیم از BLE استفاده کنید.
- توصیه شده برای: Uno، Nano، Mega، Leonardo، Due، Zero و غیره
- مجموعه کامل ویژگیهای Firmata: شامل تمام قابلیتهای StandardFirmata.
📥 دانلود StandardFirmataPishiAi #
- دانلود
StandardFirmataPishiAi.ino:
— دانلود مستقیم از Pishi.ai (نسخه ۲.۵.۹)
— از نسخههای گیتهاب (نسخه ۲.۵.۹)
🔀 حالتهای ارتباطی #
StandardFirmataPishiAi بسته به تنظیمات سختافزاری شما، چهار حالت ارتباطی ارائه میدهد.
حالت 0 – فقط USB داخلی (سریال سختافزاری) #
- از اتصال USB اصلی آردوینو استفاده میکند
- بدون نیاز به ماژول سریال/BLE خارجی
- رفتاری مشابه StandardFirmata
- بهترین گزینه برای آزمایش، اشکالزدایی یا پروژههای سیمی
حالت 1 – فقط سریال نرمافزاری (ماژول سریال/BLE اکسترنال) #
- از پینهای سریال نرمافزاری استفاده میکند (پیشفرض: RX 4 ، TX 7)
- قابلیت اتصال به ماژولهای BLE-UART یا ماژولهای UART سیمی
- USB داخلی آردوینو بلااستفاده است و برای اشکالزدایی در دسترس است.
- بهترین برای ماژولهای بیسیم BLE، اما آداپتورهای سریال نیز کار میکنند.
حالت 2 – دوکاناله USB + سریال نرمافزاری ⭐ توصیهشده #
- USB داخلی آردوینو فعال است (USB از طریق مرورگر)
- سریال نرمافزاری فعال است (برای ماژولهای اکسترنال BLE یا سریال)
- از طریق USB آپلود کنید، سپس با استفاده از USB یا ماژول اکسترنال (هر دو فعال میمانند) ارتباط برقرار کنید.
- ایدهآل برای توسعه، آموزش، تنظیمات انعطافپذیر
حالت 3 – برای بردهای چند UART، یواسبی + سریال سختافزاری #
- از USB داخلی آردوینو استفاده میکند
- از پورتهای UART سختافزاری اضافی استفاده میکند (پیشفرض: Serial1)
- ماژولهای خارجی BLE یا سریال را به یک UART سختافزاری متصل کنید
- بهترین عملکرد و پایداری
- توصیه شده برای مگا، لئوناردو، دو، زیرو
🚀 مراحل نصب #
مرحله ۱ - دانلود فرمور
دانلود: StandardFirmataPishiAi.ino
مرحله ۲ – در Arduino IDE باز کنید
-
- نرمافزار آردوینو IDE را باز کنید
- بروید به:
File → Open - فایل StandardFirmataPishiAi.ino دانلود شده را انتخاب کنید
توجه: اگر نرمافزار Arduino IDE پیامی مبنی بر انتقال فایل به پوشهای به نام StandardFirmataPishiAi نشان داد، روی OK کلیک کنید. این رفتار از اسکچهای .ino قابل انتظار است.
مرحله ۳ - انتخاب حالت ارتباط (اختیاری)
حالت ۲ (USB + سریال نرمافزاری) به طور پیشفرض انتخاب شده است.
برای تغییر حالت، این بخش را در اسکچ پیدا کنید:
// Mode 0: Built-in USB only
// Mode 1: SoftwareSerial only (external Serial/BLE module)
// Mode 2: USB + SoftwareSerial (recommended)
// Mode 3: USB + Hardware Serial (boards with multiple UARTs)
#define SERIAL_MODE 2
مرحله ۴ - نرخ باود (اختیاری)
نرخهای انتقال داده پیشفرض:
- یو اس بی داخلی: 57600
- سریال نرمافزاری: 9600 (نرخ باود پیشفرض برای اکثر ماژولهای BLE)
میتوانید آنها را اینجا تنظیم کنید:
#define HARDWARE_SERIAL_BAUD_RATE 57600
#define SOFTWARE_SERIAL_BAUD_RATE 9600
مرحله ۵ - پیکربندی پینهای سریال نرمافزار (اختیاری)
پینهای پیشفرض:
- پین ۴ ← گیرنده آردوینو
- پین ۷ ← برد فرستنده آردوینو
در صورت نیاز پینها را اینجا تغییر دهید:
#define SW_SERIAL_RX_PIN 4
#define SW_SERIAL_TX_PIN 7
مرحله ۶ - طرح را آپلود کنید
طرح را به طور معمول با استفاده از Arduino IDE آپلود کنید.
🔌 راهنمای سیمکشی برای ماژولهای اکسترنال #
📍 حالت 1 و حالت 2 (سریال نرمافزاری) #
| پین ماژول | پین آردوینو | یادداشتها |
|---|---|---|
| VCC | 5V / 3.3V | ولتاژ نامی ماژول را بررسی کنید |
| GND | GND | GND مشترک مورد نیاز |
| TX | پین ۴ | فرستنده ماژول ← گیرنده آردوینو |
| RX | پین ۷ | فرستنده آردوینو ← گیرنده ماژول ممکن است برای ماژولهای ۳.۳ ولتی نیاز به تغییر سطح ولتاژ باشد. |
↔ برای مشاهده جدول کامل در موبایل، صفحه را به چپ یا راست بکشید
📍 حالت 3 (سریال سختافزاری) #
- مگا: سریال1 (18/19)، سریال2 (16/17)، سریال3 (14/15)
- لئوناردو/دیو/زیرو: سریال1
🔗 اتصال آردوینو به اسکرچ #
۱. Pishi.ai Scratch را باز کنید:
pishi.ai/play
۲. افزونه آردوینو را اضافه کنید
۳. محافظت از پین را فعال کنید
۴. اتصال
بلوتوث ← برای ماژولهای BLE-UART
USB ← برای آداپتورهای USB اینترنال یا USB به سریال آردوینو
🧱 بلوکهای محافظت پینهای Serial/BLE #
فعال کردن محافظت
پینهای RX/TX انتخابشده را رزرو میکند تا بلوکهای Scratch نتوانند آنها را تغییر دهند. قبل از استفاده از ماژولهای اکسترنال BLE یا سریال الزامی است.
غیرفعال کردن محافظت
وقتی دیگر به ماژول اکسترنال نیازی نیست، محافظت را برداشته و پینها را برای استفادههای دیگر آزاد میکند.
بررسی وضعیت
اگر محافظت فعال باشد، مقدار true را برمیگرداند. برای اشکالزدایی یا اسکریپتهای شرطی مفید است.
📝 سفارشیسازی #
💡 تغییر پینهای ارتباطی #
اگر پینهای ۴ و ۷ با پروژه شما تداخل دارند، میتوانید پینهای متفاوتی برای SoftwareSerial اختصاص دهید.
هم فرمور و هم بلوک Scratch را بهروزرسانی کنید تا با هم مطابقت داشته باشند.
فرمور:
#define SW_SERIAL_RX_PIN 10
#define SW_SERIAL_TX_PIN 11
اسکرچ:
💡 افزایش سرعت سریال نرمافزاری #
پس از پیکربندی ماژول خود روی نرخ انتقال داده بالاتر (برای مثال ۵۷۶۰۰)، میتوانید سرعت سریال نرمافزاری را در فرمور افزایش دهید تا عملکرد ارتباطی بهبود یابد.
#define SOFTWARE_SERIAL_BAUD_RATE 57600
🔧 عیبیابی #
- دادهای وجود ندارد ← نرخ انتقال داده (باود ریت)، سیمکشی، محافظت از پینها را بررسی کنید
- آپلود ناموفق بود ← ماژول سریال اکسترنال را قطع کنید (حالت ۱)
- برد بیسیم ضعیف ← برد معمول BLE بین ۳ تا ۱۰ متر است
- پینهای اشتباه ← نگاشت RX/TX را تأیید کنید
⚡ نکات عملکردی #
- استفاده از حالت ۲ در طول توسعه
- برای بالاترین عملکرد UART از حالت ۳ استفاده کنید
- موتورها/سرووهای را به صورت خارجی تغذیه نمایید.
🎮 پروژههای نمونه #
- ماشین رباتیک بیسیم
- ایستگاه حسگر از راه دور
- دسته بازی با بلوتوث (BLE)
- پروژههای آردوینوی پوشیدنی
🔒 نکات ایمنی #
- ولتاژ ماژول را بررسی کنید: بسیاری از ماژولهای BLE ولتاژ 3.3 ولت دارند.
- اگر آردوینو شما از منطق ۵ ولتی استفاده میکند، یک تغییر دهنده سطح برای پین RX ماژول BLE اضافه کنید.
- هرگز موتورها را مستقیماً از پینهای آردوینو راهاندازی نکنید
🧪 اطلاعات فنی #
- پروتکل: استاندارد فرماتا (بهبود یافته توسط تیم Pishi.ai)
- پینهای پیشفرض RX/TX: پینهای ۴ و ۷
- نرخ بیت سریال نرمافزار پیشفرض: 9600
- بردهای پشتیبانی شده: Uno ، Nano ، Mega ، Leonardo ، Due ، Zero و غیره
📚 اطلاعات بیشتر #
- راهنمای افزونههای Pishi.ai
- مخزن گیتهاب StandardFirmataPishiAi
- مخزن گیتهاب فرماتا
- وبسایت رسمی آردوینو
- مرجع زبان آردوینو
- آموزشهای آردوینو
