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

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

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›ربات‌های پرنده (UAV)›ساخت Lap Timer FPV با IR Sensor و Arduino: اندازه‌گیری دور پرواز (فارسی)
ربات‌های پرنده (UAV)

ساخت Lap Timer FPV با IR Sensor و Arduino: اندازه‌گیری دور پرواز (فارسی)

​ ژوئن 11, 2026 2 دقیقه مطالعه
تایمر دور FPV با IR و آردوینو

Lap Timer یعنی چه؟ (برای مبتدی)

در مسابقات FPV Drone Racing، خلبانان باید تا جای ممکن سریع از یک مسیر (دروازه‌ها) عبور کنند. Lap Timer دستگاهی است که زمان عبور پهپاد از یک خط یا دروازه را اندازه می‌گیرد. سیستم‌های تجاری (مثل ImmersionRC LapRF) گران هستند — اما با یک سنسور IR ساده و Arduino می‌توانید یک Lap Timer دقیق با هزینه بسیار کم بسازید.

سنسور IR (مادون قرمز) یک پرتو نامرئی ارسال می‌کند. وقتی پهپاد از جلوی آن رد می‌شود، پرتو قطع می‌شود و یک تریگر ایجاد می‌شود. Arduino زمان بین دو تریگر متوالی را اندازه می‌گیرد — این زمان یک دور است.

محصولی که می‌سازید

یک Lap Timer با نمایشگر LCD که زمان دور، بهترین رکورد و تعداد دور را نشان می‌دهد.

  • زمان ساخت: ۲ تا ۳ ساعت
  • هزینه: ۴۰۰ تا ۶۰۰ هزار تومان
  • دقت: میلی‌ثانیه

IR TX IR RX پهپاد ← پرتو IR قطع شد → تریگر! Arduino: Lap Time = 12.34s نمایش روی LCD 16×2

قطعات لازم (BOM)

قطعه نقش
Arduino Nano کنترلر اصلی
سنسور IR فعال (TCRT5000 یا IR Barrier) تشخیص عبور پهپاد
نمایشگر LCD 16×2 با I2C نمایش زمان
بازر پیزو هشدار صوتی
دکمه Reset شروع دوره جدید

کد Arduino Lap Timer


#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

const int IR_PIN   = 2;  // INT0 — سنسور IR
const int BUZZ_PIN = 8;
const int RST_BTN  = 9;

volatile bool triggered = false;
unsigned long lastTrigger = 0;
unsigned long lapTime = 0;
unsigned long bestLap = 999999;
int lapCount = 0;
bool armed = false;

void IRAM_ATTR onIR() {
  if (millis() - lastTrigger > 1000) {  // debounce 1s
    triggered = true;
  }
}

void setup() {
  pinMode(IR_PIN, INPUT_PULLUP);
  pinMode(BUZZ_PIN, OUTPUT);
  pinMode(RST_BTN, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(IR_PIN), onIR, FALLING);
  lcd.init(); lcd.backlight();
  lcd.setCursor(0,0); lcd.print("FPV Lap Timer");
  lcd.setCursor(0,1); lcd.print("Ready!");
  delay(2000);
}

void loop() {
  if (digitalRead(RST_BTN) == LOW) {
    lapCount = 0; bestLap = 999999; armed = false;
    lcd.clear(); lcd.print("Reset!"); delay(1000);
  }

  if (triggered) {
    triggered = false;
    unsigned long now = millis();
    if (!armed) {
      armed = true; lastTrigger = now;
      lcd.clear(); lcd.print("GO!");
    } else {
      lapTime = now - lastTrigger;
      lastTrigger = now; lapCount++;
      if (lapTime < bestLap) bestLap = lapTime;
      tone(BUZZ_PIN, 2000, 200);
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("Lap"); lcd.print(lapCount);
      lcd.print(": "); lcd.print(lapTime/1000.0, 2); lcd.print("s");
      lcd.setCursor(0,1);
      lcd.print("Best:"); lcd.print(bestLap/1000.0, 2); lcd.print("s");
    }
  }
}

چک‌لیست تست

تست نتیجه
LCD متن نمایش می‌دهد؟ بله
دست جلوی IR عبور دادن → تریگر؟ بله — بازر صدا می‌دهد
زمان اول ثبت می‌شود (Armed)? عبور اول = شروع
Best Lap بهتر از لپ قبلی نمایش داده می‌شود؟ بله

Lap 3: 12.45s Best: 11.92s ★ نمایشگر LCD 16×2 — زمان دور و رکورد

ویدئوهای آموزشی


منابع بیشتر

  • آپارات: FPV Lap Timer فارسی
  • Oscar Liang: Lap Timer FPV Guide
برچسب‌ها: FPV IR Sensor Lap Timer LCD آردوینو آموزش گام‌به‌گام مبتدی مسابقه
​
مطلب بعدی ساخت IMU Data Logger با MPU6050 و SD Card: ضبط حرکت پهپاد و UGV (فارسی) مطلب قبلی راهنمای LoRaWAN و TTN: اتصال سنسور IoT به شبکه بی‌سیم ملی (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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