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

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

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

ساخت ریموت کنترل LoRa DIY برای UGV با Arduino و SX1276 (فارسی)

​ ژوئن 12, 2026 2 دقیقه مطالعه
دسته کنترل LoRa DIY آردوینو SX1276

چرا ریموت کنترل LoRa DIY؟

ریموت کنترل‌های RC معمولی (۲.۴GHz) برد ۵۰۰m دارند. LoRa با همان اندازه ماژول ۲–۵km برد می‌دهد. ضمناً می‌توانی LCD اضافه کنی که RSSI، ولتاژ باتری UGV، موقعیت GPS و هر داده‌ای که بخواهی را نشان دهد — یک GCS دستی واقعی.

🛠️ کارت پروژه

BOM Arduino Nano + Ra-02 + ۲× Joystick + LCD 16×2 I2C + باتری 18650
قیمت ~۳۵۰K تومان

ساختار بسته داده LoRa

// فرمت بسته: [Header 0xAA][Throttle int8][Steering int8][Buttons byte][Checksum]
struct CtrlPacket {
  uint8_t header   = 0xAA;
  int8_t  throttle;  // -100 تا +100
  int8_t  steering;  // -100 تا +100
  uint8_t buttons;   // bitmask: bit0=Horn, bit1=Lights
  uint8_t checksum;
};

void sendPacket(int thr, int str, byte btns){
  CtrlPacket pkt;
  pkt.throttle = constrain(thr,-100,100);
  pkt.steering = constrain(str,-100,100);
  pkt.buttons  = btns;
  pkt.checksum = pkt.throttle ^ pkt.steering ^ pkt.buttons;

  LoRa.beginPacket();
  LoRa.write((uint8_t*)&pkt, sizeof(pkt));
  LoRa.endPacket();
}

کد کامل فرستنده

#include <SPI.h>, <LoRa.h>, <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);

#define JOY_THR A0
#define JOY_STR A1
#define BTN_A   7

void setup(){
  lcd.begin(); lcd.backlight();
  LoRa.begin(433E6);
  LoRa.setSpreadingFactor(7);
}

void loop(){
  int thr = map(analogRead(JOY_THR),0,1023,-100,100);
  int str = map(analogRead(JOY_STR),0,1023,-100,100);
  byte btns = digitalRead(BTN_A)==LOW ? 0x01 : 0x00;

  sendPacket(thr, str, btns);

  // نمایش روی LCD
  lcd.setCursor(0,0); lcd.print("T:"); lcd.print(thr);
  lcd.print(" S:"); lcd.print(str); lcd.print("   ");
  lcd.setCursor(0,1); lcd.print("RSSI:");
  lcd.print(LoRa.packetRssi()); lcd.print("dBm   ");

  delay(50);
}

دیاگرام اتصال دسته کنترل LoRa DIY Arduino Nano A0=Throttle Joystick A1=Steering Joystick SPI D10-13 → Ra-02 I2C A4/A5 → LCD Joystick ×۲ Ra-02 LoRa 433MHz SPI LCD 16×2 I2C


  • arduino-LoRa Library
  • آپارات: ریموت LoRa DIY
برچسب‌ها: LCD LoRa Remote RC SX1276 UGV آردوینو جوی‌استیک دسته کنترل DIY
​
مطلب بعدی آشنایی با LoRa SX1278 — ارسال دستور به UGV از ۲ کیلومتر (فارسی) مطلب قبلی LoRaWAN + TTN برای ردیابی UGV روی نقشه اینترنتی (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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