آردوینو Arduinoمطالب آموزشیمطالب علمی

Arduino CLI چیست؟ راهنمای کامل استفاده از خط فرمان آردوینو برای حرفه‌ای‌ها

اگر سال‌ها با Arduino IDE کار کرده باشید، احتمالاً به محیط گرافیکی ساده و راحت آن عادت کرده‌اید. اما زمانی که پروژه‌ها بزرگ‌تر می‌شوند، نیاز به اتوماسیون، مدیریت حرفه‌ای کتابخانه‌ها، کامپایل خودکار، CI/CD، اسکریپت‌نویسی و توسعه در محیط‌های حرفه‌ای پیدا می‌کنید، Arduino CLI تبدیل به یکی از قدرتمندترین ابزارهایی می‌شود که می‌توانید در اختیار داشته باشید.

در این مقاله به صورت کامل با Arduino CLI آشنا می‌شویم، نحوه نصب آن را بررسی می‌کنیم، دستورات اصلی را یاد می‌گیریم و می‌بینیم چرا بسیاری از توسعه‌دهندگان حرفه‌ای به جای Arduino IDE از آن استفاده می‌کنند.


Arduino CLI چیست؟

Arduino CLI مخفف عبارت Arduino Command Line Interface است. این ابزار رسمی توسط تیم آردوینو توسعه داده شده و به شما اجازه می‌دهد تقریباً تمام کارهایی که در Arduino IDE انجام می‌دهید را از طریق ترمینال یا Command Prompt انجام دهید.

به زبان ساده، Arduino CLI همان موتور اصلی کامپایل و آپلود برنامه‌های آردوینو است اما بدون رابط گرافیکی.

با Arduino CLI می‌توانید:

  • بردهای مختلف را نصب کنید
  • کتابخانه‌ها را مدیریت کنید
  • کدها را کامپایل کنید
  • برنامه را روی برد آپلود کنید
  • اطلاعات برد متصل را بخوانید
  • پروژه‌ها را در اسکریپت‌ها اجرا کنید
  • Build خودکار بسازید
  • از آن در VS Code یا ویرایشگرهای حرفه‌ای استفاده کنید
  • سیستم CI/CD برای پروژه‌های آردوینو راه‌اندازی کنید

 

برد آردوینو Arduino Uno R4 Minima

برد آردوینو Arduino Uno R4 Minima

🛒 خرید از ECA

برد توسعه WeMos D1 با هسته WiFi ESP8266

برد توسعه WeMos D1 با هسته WiFi ESP8266

🛒 خرید از ECA

برد آردوینو لئوناردو Arduino Leonardo

برد آردوینو لئوناردو Arduino Leonardo

🛒 خرید از ECA

 

چرا Arduino CLI مهم است؟

بسیاری از کاربران تازه‌کار فقط Arduino IDE را می‌شناسند و تصور می‌کنند استفاده از خط فرمان سخت و غیرضروری است. اما در پروژه‌های حرفه‌ای، CLI مزایای بسیار مهمی دارد.

1. سرعت بیشتر

Arduino IDE مخصوصاً روی سیستم‌های ضعیف ممکن است کند اجرا شود. اما Arduino CLI بسیار سبک است و در چند ثانیه اجرا می‌شود.

2. مناسب برای پروژه‌های حرفه‌ای

وقتی چندین پروژه، چند برد و چند نسخه مختلف از کتابخانه‌ها دارید، مدیریت آن‌ها در محیط گرافیکی سخت می‌شود. CLI امکان مدیریت حرفه‌ای‌تر را فراهم می‌کند.

3. اتوماسیون

فرض کنید می‌خواهید هر بار که کد تغییر کرد، به صورت خودکار کامپایل شود. یا می‌خواهید تست خودکار روی چند برد انجام دهید. CLI این کارها را بسیار ساده می‌کند.

4. مناسب برای Linux و سرورها

بسیاری از توسعه‌دهندگان Embedded روی لینوکس کار می‌کنند. Arduino CLI بدون نیاز به محیط گرافیکی اجرا می‌شود و حتی روی سرورهای Headless نیز قابل استفاده است.

5. استفاده در VS Code

بسیاری از برنامه‌نویسان حرفه‌ای ترجیح می‌دهند به جای Arduino IDE از VS Code استفاده کنند. افزونه‌های مختلف از Arduino CLI به عنوان Backend استفاده می‌کنند.


تفاوت Arduino CLI و Arduino IDE

ویژگی Arduino IDE Arduino CLI
رابط گرافیکی دارد ندارد
مناسب مبتدی‌ها بسیار مناسب متوسط
اتوماسیون محدود بسیار قوی
سرعت متوسط بالا
مصرف RAM بیشتر کمتر
اسکریپت‌نویسی سخت عالی
استفاده روی سرور نامناسب عالی
CI/CD محدود بسیار مناسب

نصب Arduino CLI

Arduino CLI روی Windows، Linux و macOS قابل نصب است.

نصب روی ویندوز

ساده‌ترین روش دانلود فایل اجرایی از سایت رسمی Arduino است.

بعد از دانلود:

  1. فایل ZIP را استخراج کنید
  2. فایل arduino-cli.exe را در یک پوشه مناسب قرار دهید
  3. مسیر آن را به PATH ویندوز اضافه کنید

سپس Command Prompt را باز کرده و دستور زیر را اجرا کنید:

اگر نسخه نمایش داده شد یعنی نصب موفق بوده است.


نصب روی Linux

روی بسیاری از توزیع‌ها می‌توانید با wget نصب کنید:

سپس:


ایجاد فایل تنظیمات

بعد از نصب بهتر است فایل تنظیمات ساخته شود:

این دستور فایل تنظیمات را ایجاد می‌کند.

برای مشاهده مسیر فایل:


نصب Core بردها

یکی از مهم‌ترین بخش‌های Arduino CLI نصب Board Core ها است.

مثلاً برای بردهای AVR مانند Arduino Uno ابتدا لیست URL ها را به تنظیمات اضافه می‌کنیم:

سپس:

بعد از نصب می‌توانید بردهایی مثل Uno، Nano و Mega را برنامه‌ریزی کنید.


مشاهده بردهای نصب‌شده

این دستور تمام Core های نصب‌شده را نمایش می‌دهد.


مشاهده بردهای متصل

برای دیدن بردهای متصل به سیستم:

خروجی معمولاً شامل اطلاعات زیر است:

  • پورت COM
  • نوع برد
  • شناسه USB
  • وضعیت اتصال

مثال:


ساخت پروژه جدید

برای ایجاد Sketch جدید:

این دستور پوشه پروژه و فایل ino را ایجاد می‌کند.


کامپایل پروژه

فرض کنیم پروژه BlinkProject داریم.

برای کامپایل:

در اینجا:

  • compile یعنی کامپایل
  • fqbn مخفف Fully Qualified Board Name است
  • arduino:avr:uno نوع برد را مشخص می‌کند

اگر همه چیز درست باشد، فایل باینری ساخته می‌شود.


آپلود برنامه روی برد

بعد از کامپایل:

در لینوکس معمولاً پورت چیزی مثل این است:


مانیتور سریال

Arduino CLI دارای Serial Monitor نیز هست.

این قابلیت برای دیباگ بسیار کاربردی است.


مدیریت کتابخانه‌ها

یکی از بخش‌های جذاب Arduino CLI مدیریت حرفه‌ای کتابخانه‌ها است.

جستجوی کتابخانه


نصب کتابخانه


مشاهده کتابخانه‌های نصب‌شده


حذف کتابخانه


نصب بردهای ESP8266 و ESP32

یکی از محبوب‌ترین کاربردهای Arduino CLI کار با بردهای ESP است.

نصب ESP8266

ابتدا URL مربوطه را اضافه کنید:

سپس:

و بعد:


نصب ESP32

سپس:


پیدا کردن نام دقیق برد

برای مشاهده لیست بردها:

نمونه خروجی:

این نام‌ها در fqbn استفاده می‌شوند.


ساخت پروژه‌های حرفه‌ای

Arduino CLI فقط یک ابزار ساده برای آپلود نیست. بسیاری از پروژه‌های حرفه‌ای Embedded از آن استفاده می‌کنند.

مثال‌هایی از کاربرد حرفه‌ای

  • Build Server
  • تست خودکار Firmware
  • CI/CD در GitHub Actions
  • کامپایل چند برد همزمان
  • توسعه Firmware صنعتی
  • تولید فایل HEX و BIN
  • استفاده در Docker
  • توسعه پروژه‌های IoT

استفاده از Arduino CLI در VS Code

بسیاری از کاربران حرفه‌ای VS Code را ترجیح می‌دهند.

ترکیب VS Code و Arduino CLI مزایای زیادی دارد:

  • IntelliSense بهتر
  • مدیریت حرفه‌ای پروژه
  • Git داخلی
  • ترمینال داخلی
  • افزونه‌های متعدد
  • سرعت بالا

در واقع بسیاری از افزونه‌های Arduino برای VS Code در پشت‌صحنه از Arduino CLI استفاده می‌کنند.


استفاده در GitHub Actions

یکی از جذاب‌ترین قابلیت‌های Arduino CLI امکان استفاده در سیستم CI/CD است.

مثلاً می‌توانید تنظیم کنید:

  • هر بار کد Push شد کامپایل انجام شود
  • خطاهای Build بررسی شوند
  • Firmware خودکار ساخته شود
  • فایل خروجی Release شود

این موضوع برای پروژه‌های Open Source بسیار مهم است.


نمونه اسکریپت خودکار

مثلاً یک فایل Batch در ویندوز:

یا در Linux:

این اسکریپت‌ها برای اتوماسیون بسیار مفید هستند.


مزایای Arduino CLI برای تعمیرکاران و آزمایشگاه‌ها

حتی اگر توسعه‌دهنده حرفه‌ای نباشید، Arduino CLI می‌تواند در محیط‌های تعمیراتی و آزمایشگاهی کاربرد داشته باشد.

مثلاً:

  • پروگرام سریع بردها
  • تست چندین دستگاه
  • ساخت Firmware سفارشی
  • اتوماسیون تست تولید
  • تولید فایل HEX برای AVR
  • کار روی سیستم‌های سبک و قدیمی

آیا Arduino CLI برای مبتدی‌ها مناسب است؟

بله، اما بهتر است ابتدا کمی با مفاهیم زیر آشنا باشید:

  • ترمینال
  • Command Prompt
  • مسیر فایل‌ها
  • پورت COM
  • نصب کتابخانه

اگر تازه‌کار هستید شاید ابتدا Arduino IDE ساده‌تر باشد، اما یادگیری Arduino CLI در بلندمدت بسیار ارزشمند است.


خطاهای رایج در Arduino CLI

خطای پیدا نشدن برد

یعنی نوع برد مشخص نشده است.


خطای پورت

معمولاً به یکی از دلایل زیر است:

  • کابل خراب
  • درایور نصب نیست
  • پورت اشتباه انتخاب شده
  • برد روشن نیست

خطای کتابخانه

کتابخانه موردنیاز نصب نشده یا نام آن اشتباه است.


Arduino CLI یا PlatformIO؟

سؤال مهمی که بسیاری می‌پرسند این است که Arduino CLI بهتر است یا PlatformIO؟

واقعیت این است که هر دو ابزار قدرتمندی هستند.

Arduino CLI

مزایا:

  • رسمی و سبک
  • ساده‌تر
  • سازگاری بالا
  • یادگیری آسان‌تر

معایب:

  • امکانات کمتر نسبت به PlatformIO

PlatformIO

مزایا:

  • سیستم Build بسیار حرفه‌ای
  • Dependency Management قوی
  • پشتیبانی از Framework های متعدد
  • مناسب پروژه‌های بزرگ

معایب:

  • پیچیدگی بیشتر
  • مصرف منابع بیشتر

اگر تازه وارد دنیای حرفه‌ای آردوینو شده‌اید، Arduino CLI نقطه شروع عالی است.


نکات حرفه‌ای

1. استفاده از نسخه‌های مشخص کتابخانه

برای جلوگیری از خراب شدن پروژه‌ها بهتر است نسخه کتابخانه‌ها را مدیریت کنید.


2. نگهداری پروژه در Git

ترکیب Git و Arduino CLI بسیار قدرتمند است.


3. ساخت محیط توسعه قابل تکرار

با Arduino CLI می‌توانید دقیقاً مشخص کنید چه نسخه‌ای از Core و کتابخانه استفاده می‌شود.


4. استفاده در Docker

برخی شرکت‌ها محیط Build آردوینو را داخل Docker اجرا می‌کنند تا Build ها کاملاً قابل تکرار باشند.


آینده Arduino CLI

Arduino CLI روزبه‌روز در حال پیشرفت است و بسیاری از ابزارهای جدید اکوسیستم آردوینو به آن وابسته هستند.

حتی Arduino IDE 2.x نیز در بخش‌هایی از زیرساخت خود از Arduino CLI استفاده می‌کند.

این نشان می‌دهد که CLI فقط یک ابزار جانبی نیست، بلکه بخش مهمی از آینده توسعه پروژه‌های آردوینو محسوب می‌شود.


جمع‌بندی

Arduino CLI یکی از مهم‌ترین ابزارهایی است که هر توسعه‌دهنده حرفه‌ای آردوینو باید یاد بگیرد. شاید در ابتدا کار با خط فرمان کمی سخت به نظر برسد، اما مزایایی مثل سرعت بالا، اتوماسیون، مدیریت حرفه‌ای پروژه‌ها و قابلیت استفاده در سیستم‌های حرفه‌ای باعث می‌شود ارزش یادگیری بسیار بالایی داشته باشد.

اگر تاکنون فقط با Arduino IDE کار کرده‌اید، پیشنهاد می‌شود Arduino CLI را نیز امتحان کنید. حتی اگر در ابتدا فقط برای کامپایل و آپلود ساده استفاده کنید، به مرور متوجه می‌شوید چقدر توسعه پروژه‌ها سریع‌تر و حرفه‌ای‌تر می‌شود.

دنیای Embedded و IoT روزبه‌روز به سمت ابزارهای حرفه‌ای‌تر حرکت می‌کند و Arduino CLI یکی از بهترین قدم‌ها برای ورود به این مسیر است.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا