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

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

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›ربات‌های زمینی (UGV)›ساخت سیستم ضد-تصادف LiDAR برای AGV: TF-Mini Plus و آردوینو (فارسی)
ربات‌های زمینی (UGV) پروژه‌ها

ساخت سیستم ضد-تصادف LiDAR برای AGV: TF-Mini Plus و آردوینو (فارسی)

​ ژوئن 11, 2026 1 دقیقه مطالعه
LiDAR TF-Mini AGV ضد تصادف

LiDAR برای AGV چیست؟ (مبتدی)

LiDAR (Light Detection and Ranging) یک سنسور فاصله‌سنج لیزری است. TF-Mini Plus یک LiDAR فشرده و ارزان است (قیمت ۲۵-۴۰ دلار) که فاصله اشیاء را تا ۱۲ متر با دقت ±۱cm اندازه می‌گیرد. این برای ربات‌های AGV که باید از تصادف با دیوار یا انسان جلوگیری کنند بسیار مناسب است.

TF-Mini از پروتکل UART استفاده می‌کند — یعنی مثل یک Serial Port با آردوینو صحبت می‌کند و هر ۱۰۰ms یک مقدار فاصله ارسال می‌کند. سیستم ما سه ناحیه تعریف می‌کند: STOP (زیر ۳۰cm)، SLOW (۳۰-۱۰۰cm)، و GO (بالای ۱۰۰cm).

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

سیستم ضد-تصادف با LiDAR برای AGV که در ۳ ناحیه مختلف عکس‌العمل نشان می‌دهد.

  • هزینه: ۱ تا ۲ میلیون تومان (TF-Mini)
  • برد تشخیص: ۱۰cm تا ۱۲m
  • نرخ بروزرسانی: ۱۰۰Hz

AGV + LiDAR STOP <30cm SLOW 30-100cm GO >100cm LiDAR AGV — ۳ ناحیه: STOP/SLOW/GO

کد آردوینو — LiDAR Obstacle Avoidance


#include <SoftwareSerial.h>
SoftwareSerial tfSerial(4, 5);  // RX, TX

struct TFData { int distance; int strength; };

TFData readTF() {
  TFData data = {-1, -1};
  while(tfSerial.available() >= 9) {
    if(tfSerial.read() == 0x59 && tfSerial.read() == 0x59) {
      byte buf[7];
      tfSerial.readBytes(buf, 7);
      data.distance = buf[0] | (buf[1] << 8);
      data.strength = buf[2] | (buf[3] << 8);
    }
  }
  return data;
}

void setup() {
  Serial.begin(115200);
  tfSerial.begin(115200);
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  TFData tf = readTF();
  int d = tf.distance;

  if(d > 0 && d < 30) {
    Serial.println("STOP! " + String(d) + "cm");
    // stopMotors();
    digitalWrite(LED_BUILTIN, HIGH);
  } else if(d >= 30 && d < 100) {
    int speed = map(d, 30, 100, 80, 200);
    Serial.println("SLOW " + String(d) + "cm spd=" + String(speed));
    // setSpeed(speed);
  } else {
    Serial.println("GO " + String(d) + "cm");
    // setSpeed(255);
    digitalWrite(LED_BUILTIN, LOW);
  }
  delay(50);
}

چک‌لیست تست

تست نتیجه
دیوار در ۵۰cm → SLOW؟ بله
دست در ۲۰cm → STOP؟ بله
فاصله در Serial Monitor قابل خواندن؟ بله
Strength بالای ۱۰۰؟ زیر ۱۰۰ = هدف ضعیف

TF-Mini LiDAR UART 115200 Arduino منطق ناحیه L298N کنترل موتور AGV ایمن STOP/SLOW/GO LiDAR AGV — TF-Mini → Arduino → سه‌ناحیه → موتور

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


منابع بیشتر

  • آپارات: LiDAR TF-Mini آردوینو فارسی
  • GitHub: TFmini Arduino Library
برچسب‌ها: AGV LiDAR TF-Mini آردوینو آموزش گام‌به‌گام ایمنی تشخیص مانع ضد-تصادف
​
مطلب بعدی کنترل از راه دور با CC1101 و آردوینو: ماژول Sub-GHz زیر ۳ دلار برای تله‌متری UGV (فارسی) مطلب قبلی ساخت RC هواپیما با M5Stack UIFlow و LoRa: بلاکلی بدون کدنویسی (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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