Yeni: Yapay zekâ güvenlik duvarı tüm platformu izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

NodeMCU ile römork takip cihazı: harita kartı geçerli koordinatlı satır yok diyor

NodeMCU ile römork takip cihazı: harita kartı geçerli koordinatlı satır yok diyor

Çözüldü 7 6

Yapay zekâ tarafından English dilinden çevrildi ·

Bahçemizdeki römorklar için ucuz bir takip cihazı yapıyorum. NodeMCU (ESP8266) + NEO-6M, 9600 hızında SoftwareSerial üzerinde TinyGPSPlus, hareket halindeyken her 5 sn’de bir PubSubClient ile v1/telemetry konusuna yayın yapıyor. Cihazdaki Telemetri sekmesinde değerler geliyor. Ancak bahçe panosundaki harita kartı boş kalıyor ve “Geçerli koordinatlı satır yok.” yazıyor.Kartın kaynağı römork cihazlarının Son değerleri. Sütun ayarlarına dokunmadım. Ayrıca test panosunda görünen işaretçiler (koordinatları elle girdim) doğru, yani kartın kendisi çalışıyor.Neyi yanlış yaptığıma dair bir fikriniz var mı? Kodu paylaşmaktan memnuniyet duyarım.

♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

GPS bir konum sabitliyor mu? Kapalı alanlarda NEO-6M dakikalarca 0 uydu ile bekleyebilir ve TinyGPS size 0.0 verir.

♥ 2

Yapay zekâ tarafından English dilinden çevrildi ·

Fix sorunsuz, seri monitör 9 uydu ve makul koordinatlar gösteriyor. Gönderilen veri şu:

{"lat":"-43.53","lon":"172.63","spd_kmh":0.0,"sats":9}
♥ 1

Yapay zekâ tarafından English dilinden çevrildi ·

Bunlar string, ve iki ondalıklı değer. Bu bilerek mi yapıldı?

Measure twice, poll once.
♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

O veri yükünde üç şey var, bunların ikisinde forklift takipçilerinde ben de takıldım.Harita kartının Longitude sütunu varsayılan olarak lng, Latitude ise lat. Sen lon gönderiyorsun, bu yüzden her satırda boylam yok ve atlanıyor. Ya cihazda anahtarı yeniden adlandır ya da karttaki Longitude sütununu lon olarak ayarla. Ben cihazda yeniden adlandırırdım, böylece gelecekteki her kart sorunsuz çalışır.Sayıları JSON’u String() ile oluşturduğun için metin olarak gönderiyorsun. Sayı benzeri metinler karşılaştırmalarda çoğu zaman çalışır, yine de gerçek sayılar gönder. Ayrıca String(float) varsayılan olarak iki ondalık basamak verir, bu yaklaşık bir kilometreye denk gelir. Römorkların hepsi aynı noktada görünür.Ve konum geçerli değilse yayınlama yapma, yoksa bir kulübede her açıldığında römorkların Afrika açıklarında 0,0 noktasında park ettiği görülür.

if (gps.location.isValid() && gps.location.age() < 3000) {
char buf[96];
snprintf(buf, sizeof(buf), "{"lat":%.6f,"lng":%.6f,"spd_kmh":%.1f}",
gps.location.lat(), gps.location.lng(), gps.speed.kmph());
client.publish("v1/telemetry", buf);
}

snprintf ile %f, Uno’dan farklı olarak ESP8266 çekirdeğinde çalışır. Kart ayarları Map cards sayfasında.

Timestamps in UTC or it didn't happen.
Kabul edilen çözüm♥ 9

Yapay zekâ tarafından English dilinden çevrildi ·

Harita, gittiği yerlerin bir izini mi tutuyor yoksa yalnızca en son noktayı mı?

Still waiting for the gateway to reconnect.
♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

İzlerle ilgilenmeden önce mesaj sayısına bakın. Cihaz başına 5 sn’de bir mesaj, ayda yaklaşık 518.000 demektir. Starter planı tüm kuruluş için 1.150.000’dir. Hareket halindeyken her 30 sn’de bir, park halindeyken ise 10 dakikada bir gönderiyoruz.

♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

Lon’u lng olarak yeniden adlandırdım ve snprintf’e geçtim, işaretçiler hemen göründü ve doğru bölmelerde, tek bir noktada üst üste yığılmadan. Ayrıca Tyler’ın tavsiyesini de dinledim; 5 s tembelliğimdi, şimdi hareket halinde 30 s / park halindeyken 10 dk, hız kontrolüyle. Kevin, şimdilik yalnızca en son konumları gösteriyorum.

♥ 0
8 yazı görüntüleniyor – 1 ile 8 arası (toplam 8)
  • Bu konuyu yanıtlamak için giriş yapmış olmalısınız.

Sohbete katılın

Soru sormak ve yanıtlamak, yararlı gönderileri beğenmek ve sorununuzu çözen yanıtı işaretlemek için oturum açın. Her katkı puan ve seviye kazandırır.

Paylaş