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

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

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›آموزش›اضافه کردن GPS به موتورسیکلت خودمتوازن — ردیابی مسیر با NEO-6M و LoRa (فارسی)
آموزش ربات‌های زمینی (UGV)

اضافه کردن GPS به موتورسیکلت خودمتوازن — ردیابی مسیر با NEO-6M و LoRa (فارسی)

​ ژوئن 12, 2026 2 دقیقه مطالعه
GPS ردیابی موتورسیکلت NEO-6M LoRa

GPS چطور موقعیت را می‌داند؟

ماژول NEO-6M (ساخت u-blox) یک گیرنده GPS است که از سیگنال حداقل ۴ ماهواره برای محاسبه موقعیت با دقت ~۲.۵m استفاده می‌کند. این ماژول داده را به فرمت NMEA از طریق UART (سریال) ارسال می‌کند — جملاتی مثل ,123519,A,4807.038,N,01131.000,E,022.4,084.4... که حاوی عرض جغرافیایی، طول جغرافیایی، سرعت و جهت است.

وقتی این داده را با LoRa به Ground Station ارسال کنیم، می‌توانیم مسیر UGV را روی نقشه در زمان واقعی ببینیم.

🛠️ کارت پروژه

دقت GPS ~۲.۵m (NEO-6M استاندارد)
نرخ به‌روزرسانی ۱Hz پیش‌فرض (قابل ارتقا به ۵Hz)
برد ارسال LoRa ۲–۵km

BOM

قطعه قیمت
ماژول GPS NEO-6M با آنتن ~۱۵۰K
ماژول LoRa Ra-02 ×۲ ~۳۰۰K
Arduino Nano ×۲ ~۲۰۰K
کانکتور JST و سیم ~۳۰K

اتصال GPS NEO-6M به Arduino

NEO-6M Arduino Nano
VCC 3.3V
GND GND
TX D4 (SoftwareSerial RX)
RX D3 (SoftwareSerial TX)

کد: ارسال GPS از طریق LoRa

#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include <SPI.h>
#include <LoRa.h>

SoftwareSerial gpsSerial(4,3);
TinyGPSPlus gps;

void setup(){
  gpsSerial.begin(9600);
  LoRa.begin(433E6);
}

void loop(){
  while(gpsSerial.available()) gps.encode(gpsSerial.read());

  if(gps.location.isUpdated()){
    float lat = gps.location.lat();
    float lng = gps.location.lng();
    float spd = gps.speed.kmph();

    LoRa.beginPacket();
    LoRa.print(lat,6); LoRa.print(',');
    LoRa.print(lng,6); LoRa.print(',');
    LoRa.print(spd,1);
    LoRa.endPacket();
  }
}

نمایش روی Google Earth

  1. گیرنده LoRa به کامپیوتر وصل است — با Python داده UART را بخوان.
  2. یک فایل KML بنویس و هر چند ثانیه با موقعیت جدید آپدیت کن.
  3. Google Earth را با Network Link به این فایل وصل کن — مسیر روی نقشه ظاهر می‌شود.
# Python: ذخیره KML از داده LoRa
import serial, time
ser = serial.Serial('COM3', 9600)
coords = []
while True:
    line = ser.readline().decode().strip()
    parts = line.split(',')
    if len(parts)==3:
        lat,lng,spd = parts
        coords.append(f"{lng},{lat},0")
        kml = f"""<?xml version="1.0"?>
<kml><Document><Placemark><LineString>
<coordinates>{chr(10).join(coords)}</coordinates>
</LineString></Placemark></Document></kml>"""
        open('track.kml','w').write(kml)
    time.sleep(1)

  • کتابخانه TinyGPS++ — GitHub
  • آپارات: GPS ردیابی با آردوینو
برچسب‌ها: Google Earth GPS LoRa NEO-6M NMEA آردوینو ردیابی موتورسیکلت خودمتوازن
​
مطلب بعدی کنترل از راه دور اسکوتر خودمتوازن با LoRa SX1278 — ۲ کیلومتر برد (فارسی) مطلب قبلی موتورهای DC، سرو و پله‌ای: کدام برای UGV و ربات زمینی مناسب است؟ (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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