کولار ردیاب هوشمند یعنی چه؟ (برای مبتدی)
یک کولار ردیاب یک دستگاه GPS کوچک است که به گردن حیوان متصل میشود و موقعیت آن را به صاحبش ارسال میکند. برای مزارع دامی، سگهای شکاری، یا حیوانات خانگی بسیار کاربردی است.
ما از LoRa 433MHz استفاده میکنیم که برد ۲-۵ کیلومتر در مناطق روستایی دارد — بدون نیاز به اینترنت. موقعیت GPS هر ۵ دقیقه ارسال میشود. یک گیرنده ثابت در خانه/مزرعه دادهها را دریافت و روی نقشه نمایش میدهد.
مصرف برق کم (Deep Sleep بین ارسالها) به باتری ۱۸۰۰mAh اجازه میدهد ۳-۵ روز دوام بیاورد.
محصولی که میسازید
یک کولار ردیاب GPS با LoRa برای حیوانات که موقعیت را بدون اینترنت ارسال میکند.
- زمان ساخت: ۵ تا ۸ ساعت
- هزینه: ۱ تا ۱.۸ میلیون تومان
- عمر باتری: ۳-۵ روز (Deep Sleep)
قطعات کولار (BOM)
| قطعه | نقش |
|---|---|
| ESP32-S3 Mini (کمحجم) | پردازشگر + Deep Sleep |
| GPS NEO-M8N با آنتن سرامیکی | موقعیت دقیق |
| LoRa SX1278 433MHz | ارسال بدون اینترنت |
| LiPo 1800mAh + TP4056 | منبع قدرت + شارژ |
| صندوق IP65 کوچک | محافظت ضدآب |
کد ESP32 — Tracker با Deep Sleep
#include <TinyGPS++.h>
#include <LoRa.h>
#include <esp_sleep.h>
HardwareSerial gpsSerial(1);
TinyGPSPlus gps;
const uint64_t SLEEP_TIME = 5 * 60 * 1000000ULL; // ۵ دقیقه
void setup() {
gpsSerial.begin(9600, SERIAL_8N1, 16, 17);
LoRa.begin(433E6);
LoRa.setSpreadingFactor(10);
LoRa.setTxPower(17);
// منتظر GPS Fix (حداکثر ۶۰ ثانیه)
unsigned long start = millis();
while (millis() - start < 60000) {
while (gpsSerial.available()) gps.encode(gpsSerial.read());
if (gps.location.isValid()) break;
}
if (gps.location.isValid()) {
String pkt = "T," + String(gps.location.lat(), 6) + ","
+ String(gps.location.lng(), 6) + ","
+ String(gps.altitude.meters(), 1) + ","
+ String(gps.hdop.value());
LoRa.beginPacket();
LoRa.print(pkt);
LoRa.endPacket();
}
// Deep Sleep برای صرفهجویی
esp_sleep_enable_timer_wakeup(SLEEP_TIME);
esp_deep_sleep_start();
}
void loop() {} // هرگز اجرا نمیشود
کد گیرنده — نمایش روی نقشه
// گیرنده روی TTGO LoRa32:
#include <LoRa.h>
#include <WiFi.h>
#include <WebServer.h>
WebServer server(80);
float lastLat, lastLon;
String lastData = "--";
void loop() {
int sz = LoRa.parsePacket();
if(sz > 0) {
String data = "";
while(LoRa.available()) data += char(LoRa.read());
if(data.startsWith("T,")) {
// پارس: T,lat,lon,alt,hdop
int c1=data.indexOf(',',2), c2=data.indexOf(',',c1+1);
lastLat = data.substring(2,c1).toFloat();
lastLon = data.substring(c1+1,c2).toFloat();
lastData = data;
}
}
server.handleClient();
// handleRoot لینک Google Maps میفرستد
}
چکلیست تست
| تست | نتیجه |
|---|---|
| GPS Fix در فضای باز گرفته میشود؟ | بله — زیر ۳۰ ثانیه |
| گیرنده پکت LoRa دریافت میکند؟ | بله — RSSI بالای -۱۱۰dBm |
| Deep Sleep جریان < ۵mA؟ | بله — مولتیمتر |
| هشدار Geofence کار میکند؟ | بله |