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

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

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›آموزش›LiDAR ارزان برای UGV — RPLIDAR A1 و TF-Luna: نقشه محیط با آردوینو (فارسی)
آموزش ربات‌های زمینی (UGV)

LiDAR ارزان برای UGV — RPLIDAR A1 و TF-Luna: نقشه محیط با آردوینو (فارسی)

​ ژوئن 12, 2026 1 دقیقه مطالعه
LiDAR RPLIDAR TF-Luna UGV نقشه محیط

LiDAR چیست؟ چرا از سونار بهتر است؟

LiDAR (Light Detection And Ranging) از لیزر برای اندازه‌گیری فاصله استفاده می‌کند — دقیق‌تر، سریع‌تر و با برد بیشتر از سونار. دو نوع رایج برای DIY:

TF-Luna: یک ToF (Time-of-Flight) لیزری با برد ۸ متر، ارتباط UART/I2C و قیمت ~۱۸۰K — مناسب اجتناب از موانع در یک جهت.

RPLIDAR A1: یک LiDAR چرخان ۳۶۰° با برد ۱۲ متر و ۸۰۰۰ نقطه/ثانیه — مناسب نقشه‌برداری کامل محیط (SLAM). قیمت ~۸۰۰K اما قدرتمندترین ابزار DIY برای ناوبری است.

🛠️ کارت پروژه

مقایسه TF-Luna: ارزان، ساده / RPLIDAR: کامل، گران
پروسسور TF-Luna: Arduino / RPLIDAR: Raspberry Pi + ROS

کد TF-Luna با آردوینو

// TF-Luna از طریق UART (9600 baud)
#include <SoftwareSerial.h>
SoftwareSerial tfLuna(10, 11);  // RX=10, TX=11

int getTFDistance(){
  if(tfLuna.available() >= 9){
    if(tfLuna.read() == 0x59 && tfLuna.peek() == 0x59){
      tfLuna.read();  // دومین header
      int dist = tfLuna.read() | (tfLuna.read() << 8);
      int strength = tfLuna.read() | (tfLuna.read() << 8);
      tfLuna.read(); tfLuna.read(); tfLuna.read();  // بقیه بسته
      if(strength > 100) return dist;  // اطمینان از سیگنال قوی
    }
  }
  return -1;
}

void setup(){
  tfLuna.begin(115200);  // TF-Luna default 115200
  // تغییر به 9600 با دستور TFMini:
  // byte cmd[] = {0x5A,0x08,0x06,0x01,0x01,0x00,0x00,0x67};
}

void loop(){
  int d = getTFDistance();
  if(d > 0 && d < 50){  // مانع در ۵۰cm
    stopAndAvoid();
  }
}

راه‌اندازی RPLIDAR A1 روی Raspberry Pi + ROS

# نصب ROS Noetic روی Raspberry Pi (Ubuntu 20.04)
sudo apt install ros-noetic-rplidar-ros

# اجرای RPLIDAR node:
roslaunch rplidar_ros rplidar_a1.launch

# مشاهده نقشه در Rviz:
rosrun rviz rviz
# اضافه کردن LaserScan display → topic: /scan

  • RPLIDAR ROS Package — GitHub
  • آپارات: LiDAR ربات نقشه
برچسب‌ها: Arduino LiDAR Mapping ROS RPLIDAR A1 TF-Luna ToF UGV نقشه‌برداری
​
مطلب بعدی Obstacle Avoidance با HC-SR04 و IR برای UGV — جلوگیری از برخورد (فارسی) مطلب قبلی دنبال کردن خط با UGV — ساده‌ترین پروژه خودکار با حسگر IR (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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