- 📡 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 (سریال نرمافزاری) #
| Module Pin | Arduino Pin | یادداشتها |
|---|---|---|
| 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
۲. افزونه آردوینو را اضافه کنید
۳. محافظت از پین را فعال کنید
فعال کردن serial/ble روی rx: [4] tx: [7]
۴. اتصال
بلوتوث ← برای ماژولهای BLE-UART
USB ← برای آداپتورهای USB اینترنال یا USB به سریال آردوینو
🧱 بلوکهای محافظت پینهای Serial/BLE #
فعال کردن محافظت
فعال کردن serial/ble روی rx: [4] tx: [7]
پینهای RX/TX انتخابشده را رزرو میکند تا بلوکهای Scratch نتوانند آنها را تغییر دهند. قبل از استفاده از ماژولهای اکسترنال BLE یا سریال الزامی است.
غیرفعال کردن محافظت
غیرفعال کردن serial/ble و آزادسازی پین ها
وقتی دیگر به ماژول اکسترنال نیازی نیست، محافظت را برداشته و پینها را برای استفادههای دیگر آزاد میکند.
بررسی وضعیت
serial/ble فعال است؟
اگر محافظت فعال باشد، مقدار true را برمیگرداند. برای اشکالزدایی یا اسکریپتهای شرطی مفید است.
📝 سفارشیسازی #
💡 تغییر پینهای ارتباطی #
اگر پینهای ۴ و ۷ با پروژه شما تداخل دارند، میتوانید پینهای متفاوتی برای SoftwareSerial اختصاص دهید.
هم فرمور و هم بلوک Scratch را بهروزرسانی کنید تا با هم مطابقت داشته باشند.
فرمور:
#define SW_SERIAL_RX_PIN 10
#define SW_SERIAL_TX_PIN 11
اسکرچ:
فعال کردن serial/ble روی rx: [10] tx: [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
- مخزن گیتهاب فرماتا
- وبسایت رسمی آردوینو
- مرجع زبان آردوینو
- آموزشهای آردوینو
