</> Make for Iran – بسازیم برای ایران

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

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›ربات‌های پرنده (UAV)›اسکریپت‌نویسی Lua در ArduPilot — خودکارسازی سفارشی (فارسی)
ربات‌های پرنده (UAV) پروژه‌ها

اسکریپت‌نویسی Lua در ArduPilot — خودکارسازی سفارشی (فارسی)

​ ژوئن 21, 2026 1 دقیقه مطالعه
Lua Scripting ArduPilot

Lua Scripting چیست؟

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

اسکریپت‌ها فایل‌های .lua هستند که در پوشه APM/scripts روی کارت SD فلایت کنترلر قرار می‌گیرند و هنگام بوت اجرا می‌شوند. این یکی از قدرتمندترین قابلیت‌های پیشرفته ArduPilot است.

🛠️ کارت پروژه

پیش‌نیاز FC با کارت SD و حافظه کافی (H7 بهتر)
فریم‌ور نسخه دارای Scripting

گام ۱: فعال‌سازی Scripting

SCR_ENABLE = 1
SCR_HEAP_SIZE = 100000   (حافظه اختصاصی به بایت)
# پس از تغییر، FC را ری‌استارت کنید

گام ۲: ساختار یک اسکریپت ساده

-- نمونه: ارسال پیام و خواندن ولتاژ باتری هر ثانیه
function update()
  local volt = battery:voltage(0)
  gcs:send_text(6, "Battery: " .. tostring(volt) .. " V")
  return update, 1000   -- اجرای دوباره بعد از 1000ms
end

return update, 1000

گام ۳: قرار دادن اسکریپت روی FC

  • فایل را با نام مثل battmon.lua ذخیره کنید.
  • آن را در پوشه APM/scripts روی کارت SD کپی کنید (یا از طریق MAVFtp).
  • FC را ری‌استارت کنید؛ پیام‌ها در Messages تب Mission Planner ظاهر می‌شوند.

کتابخانه‌های پرکاربرد Lua

شیء کاربرد
gcs ارسال پیام به ایستگاه زمینی
battery خواندن ولتاژ/جریان
SRV_Channels کنترل خروجی سرو
vehicle تغییر حالت و وضعیت پرواز

منابع یادگیری بیشتر

  • راهنمای رسمی Lua Scripting
  • آپارات: Lua در ArduPilot
برچسب‌ها: ArduPilot Lua SCR_ENABLE آموزش گام‌به‌گام اسکریپت برنامه‌نویسی خودکارسازی پیشرفته
​
مطلب بعدی حالت Follow Me در ArduPilot — دنبال کردن خودکار شما (فارسی) مطلب قبلی Terrain Following در ArduPilot — حفظ ارتفاع از سطح زمین (فارسی)
</> Make for Iran – بسازیم برای ایران

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

یاد بگیر، بساز، به اشتراک بگذار. جامعه‌ای برای سازندگان، مهندسان و علاقه‌مندان به فناوری در ایران.

دسته‌بندی‌ها

  • پروژه‌ها
  • ربات‌های پرنده (UAV)
  • آموزش
  • ربات‌های زمینی (UGV)
  • الکترونیک
  • پهپاد و مولتی‌روتور

پیوندها

  • خانه
  • درباره ما
  • تماس
  • فید RSS

آخرین مطالب

  • خلاصه دوره ArduPilot/iNAV و گام‌های بعدی (فارسی)
  • رادیو تله‌متری در مقابل LTE/4G برای کنترل از راه دور (فارسی)
  • Ground Station روی موبایل و تبلت — QGroundControl و Solex (فارسی)
  • راه‌اندازی Ground Station با Mission Planner (فارسی)
© 2026 Make for Iran – بسازیم برای ایران. تمامی حقوق محفوظ است.
ساخته شده با ❤️ برای سازندگان ایران  |  ورود