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

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

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

ساخت پهپاد تله‌متری با ArduPilot و لاگ ابری: ارسال داده به ThingSpeak (فارسی)

​ ژوئن 11, 2026 2 دقیقه مطالعه
ArduPilot ThingSpeak ESP32 تله‌متری ابری

تله‌متری ابری ArduPilot چیست؟ (مبتدی)

معمولاً تله‌متری ArduPilot به Mission Planner روی لپ‌تاپ می‌رسد — اما اگر بخواهیم داده پرواز را در ابر ذخیره کنیم و از هر جای دنیا ببینیم چه؟ با یک ESP32 به عنوان پل MAVLink-WiFi، می‌توان داده تله‌متری پرواز را به ThingSpeak (سرویس IoT رایگان از MathWorks) ارسال کرد.

ThingSpeak هر فیلد را (ارتفاع، ولتاژ باتری، سرعت، موقعیت GPS) در یک Channel ذخیره می‌کند. می‌توان نمودارهای زنده، هشدار ایمیل، و حتی MATLAB Analytics روی داده اجرا کرد — همه رایگان تا ۸ فیلد و ۸۰۰۰ پیام در روز.

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

پل تله‌متری ArduPilot به ابر ThingSpeak با ESP32.

  • هزینه اضافه: فقط ESP32 ≈ ۵ دلار
  • سرویس: ThingSpeak رایگان
  • داده‌ها: ارتفاع، ولتاژ، سرعت، GPS

UAV پهپاد Pixhawk UART Telem2 ESP32 MAVLink Parser WiFi HTTPS اینترنت ThingSpeak Channel Fields نمودار + هشدار ArduPilot → ESP32 → ThingSpeak — تله‌متری ابری

کد ESP32 — پل MAVLink به ThingSpeak


#include <WiFi.h>
#include <HTTPClient.h>
#include <HardwareSerial.h>

const char* ssid = "YourHotspot";
const char* pass  = "YourPass";
const char* TS_KEY = "YOUR_THINGSPEAK_WRITE_KEY";
const char* TS_URL = "https://api.thingspeak.com/update";

HardwareSerial mavSerial(1);  // UART1 ← Pixhawk

// ساده‌ترین روش: دریافت MAVLink HEARTBEAT و GPS
float altitude=0, voltage=0, speed=0;
double lat=0, lon=0;

void parseMavlink(uint8_t* buf, int len) {
  // بررسی Magic Byte و Message ID:
  if(len < 8 || buf[0] != 0xFE) return;
  uint8_t msgid = buf[5];
  if(msgid == 24) {  // GPS_RAW_INT
    lat = *(int32_t*)(buf+9) / 1e7;
    lon = *(int32_t*)(buf+13) / 1e7;
    altitude = *(int32_t*)(buf+17) / 1000.0;  // متر
  }
  if(msgid == 74) {  // VFR_HUD
    speed = *(float*)(buf+6);
  }
  if(msgid == 147) {  // BATTERY_STATUS
    voltage = *(int16_t*)(buf+20) / 1000.0;
  }
}

void sendToThingSpeak() {
  HTTPClient http;
  String url = String(TS_URL) +
    "?api_key=" + TS_KEY +
    "&field1=" + String(altitude,1) +
    "&field2=" + String(voltage,2) +
    "&field3=" + String(speed,1) +
    "&field4=" + String(lat,6) +
    "&field5=" + String(lon,6);
  http.begin(url);
  int code = http.GET();
  http.end();
}

void setup() {
  mavSerial.begin(57600, SERIAL_8N1, 16, 17);
  WiFi.begin(ssid, pass);
  while(WiFi.status()!=WL_CONNECTED) delay(300);
}

void loop() {
  static uint8_t buf[280]; static int idx=0;
  while(mavSerial.available()) {
    buf[idx++] = mavSerial.read();
    if(idx >= 8 && idx == (buf[1]+8)) {
      parseMavlink(buf, idx); idx=0;
    }
    if(idx > 280) idx=0;
  }
  static unsigned long t=0;
  if(millis()-t > 15000) {  // هر ۱۵ ثانیه
    sendToThingSpeak(); t=millis();
  }
}

تنظیم ThingSpeak Channel

Field داده واحد
Field 1 Altitude متر
Field 2 Battery Voltage ولت
Field 3 Ground Speed m/s
Field 4+5 GPS Latitude/Longitude درجه

Pixhawk MAVLink UART ESP32 Bridge WiFi HTTPS ThingSpeak Channel API داشبورد نمودار زنده MAVLink → ESP32 → ThingSpeak — لاگ تله‌متری ابری

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


منابع بیشتر

  • آپارات: ArduPilot ThingSpeak تله‌متری فارسی
  • MathWorks: ThingSpeak API Documentation
برچسب‌ها: ArduPilot ESP32 IoT MAVLink ThingSpeak آموزش گام‌به‌گام ابر تله‌متری
​
مطلب بعدی ساخت رادیو مش SDR با GNU Radio و USRP B200: شبکه رادیو دیجیتال (فارسی) مطلب قبلی ساخت Follow-Me Drone با GPS: پهپاد که دنبال شما می‌آید (فارسی)
</> Make for Iran – بسازیم برای ایران

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

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

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

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

پیوندها

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

آخرین مطالب

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