GPS cihazında “hareket eksikliğini” tespit etme


21

Araçlara monte edilmiş bir GPS izleme cihazı kullanıyoruz ve daha sonra uygulamamızdaki hareketleri görüntülüyoruz. Küçük bir sorun yaşıyoruz, ancak taşınmadıklarında araçlarla.

Hareketsiz durmasına rağmen, GPS cihazı çeşitli pozisyonlarda bilgi gönderir, bazen aracın hareket ettiğini bile bildirir (bir aracın oldukça hızlı hareket ettiğini rapor eder). Sonuçta, uygulamamızdaki hareketin çirkin bir temsili ve aracın ne kadar sürdüğü ve hareketsiz durduğuna dair daha kötü, yanlış hesaplamalar var (bazı istatistiksel analizler de devam ediyor).

Sorunun yeni olmadığını biliyorum: Android telefonumdaki Google Navigasyon da her zaman ve tekrar kavşakta durduğumda sorun yaşıyor, şimdi tam tersi yönde sürdüğümü tespit ediyor (aslında dururken duruyorum) ).

Ancak, özellikle uzun süre boyunca aracın hareket etmediğini söyleme yöntemine gerçekten ihtiyacımız var.

Sorun, gece için çatılar altında tutulan bazı araçlarda daha da artmaktadır, bu da GPS'in zayıf bir sinyal nedeniyle (ancak bir pozisyon elde etmek için yeterince güçlü olan) çılgına dönmesine neden olmaktadır.

Aracın motorunun açık mı yoksa kapalı mı olduğunu tespit edebiliriz, ancak motorun kapalıyken hareket etmediğini varsayamayız (hasarlı bir aracın çekildiği durumlar vardı ... ve tabii ki ayrıca ihtiyacı olan potansiyel bir hırsızlık vakası da var.) bildirilmelidir).

Bu soruna yaklaşmanın en iyi yolu nedir?

DÜZENLE:

Daha fazla bilgi eklemek için:

  • GPS cihazında bir ivmeölçer var, ancak bu yalnızca ikili bir bilgi (hareketli / hareketli değil) döndürür ve TOO'ya duyarlı veya sadece düz çalışmıyordur.

  • Uydu sayısı veya kalitesi gibi şeylere erişimimiz var, ancak bu bilgiyi nasıl kullanacağımızdan emin değiliz. Böylece benim sorum. :)

  • Sorun, bir aracın gerçek zamanlı olarak hareket edip etmediğini tespit etmekle ilgili değil. Verileri topluyoruz ve daha sonra bazı istatistiksel analizler yapıyoruz ve gösteriyoruz. Aracın o andaki pozisyonunu gösteriyoruz, ancak bu çok önemli değil. Bu yüzden, temel olarak, geçmiş verilere bakarak bir aracın hareket ettiğini veya hareket etmediğini söyleyebilmemiz gerekir.


7
İzleyicinize entegre edilmiş bir ivmeölçer varsa, aracın gerçekten hareket edip etmediğini tespit etmek için ivmeölçer verilerinden faydalanabilir ve hareket etmiyorsa GPS izlemeyi kapatabilirsiniz.
geogeek

2
GPS cihazınız sinyal kalitesini, uydu sayısını ve bu tür verileri kaydediyor mu? Ayrıca, 'hareketleri daha sonra göstereceksiniz' gibi gözüküyor, bu yüzden bunun gerçek zamanlı bir algılama sorunu olmadığını, işlem sırasında daha sonra filtreleyeceğiniz bir şey olduğunu doğrulayabilir misiniz?
Simbamangu

Daha fazla bilgi vermek için sorumu değiştirdim. Kısacası: ivmeölçer çılgınca davranıyor, uydu sayımı veya kalite bilgisine erişebiliyoruz, ancak onları nasıl kullanacağımızdan emin değiliz ve evet, bu gerçek zamanlı bir algılama sorunu DEĞİLDİR.
Shaamaan

2
Aykırı değerlerin algılanması ve yumuşatılmasıyla ilgili istatistikler sitesinde bazı yararlı öneriler bulacaksınız .
whuber

1
Geofence - bir araç bir bölgedeyken (yani garaj o zaman pozisyonu kaydetmez) - androidzoom.com/android_applications/geofencing
Mapperz

Yanıtlar:


5

Sorunuzun altındaki yorumlar, özellikle uydu veri kalitesini (uyduların sayısı, sinyal gücü) yorumlama konusunda bazı iyi noktalar ortaya koymaktadır ve bu bilgileri "kötü" GPS değerlerini filtrelemek için mobil cihazda veya sunucuda kullanabilirsiniz. Soru iki bölümden oluşmaktadır: 1) sahte bir GPS okumasını nasıl tanımlarsınız ve 2) sabit bir durumu nasıl tanımlarsınız.

Birkaç parametre ile başlayalım:

  • stationary_speed = eğer mobil cihaz bundan daha yavaş gidiyorsa, sabit
  • too_fast = eğer mobil cihaz bundan daha hızlı gidiyorsa, sahte bir GPS okuması vermiştir.

Bu hızları hassasiyetle hesaplamak çok zordur. Hızı önceki okuma (t0'da) ve geçerli okuma (t1'de) arasında / olarak hesapladığınızı söyleyin. Zaman deltası büyükse ve ünite bir eğri etrafında ilerlerse, kat edilen gerçek mesafe hesaplanan mesafeden daha büyük olacaktır. Ayrıca, art arda iki sahte okuma alırsanız ve bunlar birbirlerine yeterince yakınsa, tahmin edilemeyen sonuçlar elde edebilirsiniz.

Hızınız olduğunda, GPS değerinin sahte olup olmadığını veya ünite durağan olup olmadığını görmek için parametrelerinizle karşılaştırın.

Kalman filtreleriyle daha sofistike filtreleme yapabilirsiniz, ancak bu çok daha fazla ilgili olabilir.


GPS cihazı, gönderilen her paketle birlikte, konum ve geçerli hız dahil bir dizi veri döndürür. Hızın belirli bir değerden düşük olması durumunda, aracın hareket etmediğini varsaydığımız bir sistemimiz var, ancak bir aracın hareketsiz olmasına rağmen bu eşiğin üzerinde hız ile veri gönderdiği durumlar söz konusudur (not: hızlar üst sınır ekleyebileceğimiz harika değil. Hızı sadece konumlara dayalı (GPS okuma yerine) hesaplamanın iyi bir fikir olup olmadığından emin değilim.
Shaamaan

2

Hareket sensörü verilerini ayarlamayı başardık.

Hareket sensörü verilerini, ateşleme verilerini ve GPS izci tarafından bildirilen hızları kullanarak, bir aracın ne zaman hareket ettiğini veya oldukça iyi bir doğrulukla hareket etmediğini söyleyebilmeliyiz.

Ayrıca uyduların sayısına da baktık ve bu pek de iyi değildi. Bir çatı altındaki bir araç için uydu sayısı daha düşükken, nispeten daha yüksekti. 9-10 böyle bir aracın normal değeridir, bir çatı altında 7'ye düşer (ancak bazen bir sinyal alabilir ve de yukarı çıkabilir). Söylemeye gerek yok, uydu sayısının kullanışlı olmasından daha az olduğu kanıtlandı.


Bilgi, hatalı verileri belirlemek için hala kullanışlıdır. Buna dayanarak çok sayıda 'doğru' filtreleme yapıyorum. 9 hala yüksek, çipin bilinen en iyi değeri tekrarlamadığından emin misiniz, bunlar gemide bu işlevselliğe sahip ve çoğu zaman etkin.
Glenn Plas,

Asıl sorun, gece için bir tür kulübede saklanan araçlarla ilgilidir. Son bilinen pozisyonu tekrarladığını sanmıyorum, çünkü taşıtlar beton garajlara girdiğinde / depolandığında tamamen yok olacak (veya daha katı bir şey). Uyduların düşmesi bir göstergedir, ancak ince gözüküyor ve hareket sensörü verilerini sadece değiştirmek ve kullanmak çok daha kolay hale geldi.
Shaamaan

Takip ettiğim 3000+ araçta değil, görünümde olanları değil, düzeltmek için kullanılan sats sayısına ihtiyacınız var. Hala bir sinyalin geçmesine izin veren bir çatınız olduğunda bunlar yüksek kalabilir. Ancak düzeltme, Db kazanç değerleri ile birlikte iyi bir göstergedir.
Glenn Plas,

Hangilerinin, bir çeşit garajın içinde / dışında olduğunu mükemmel bir şekilde söyleyebilirim. Ayrıca, hareket durumu / hareketsiz durumu onu hapsettiği için örümcek probleminden de acı çekmiyorum. Sensörlerin devam etmesi için sana daha fazla şey verdiğini kabul ediyorum.
Glenn Plas,

1
Meslektaşım, bir düzeltme için kullanılan numaradan ziyade, görünür uydu sayısını yanlış ayarlamış olabilir (tüm gördüğüm sütun başlıklarının manuel olarak doldurulduğu bir Excel sayfasıydı). : P Her durumda, yazdığım gibi, ayarlı hareket sensörü bu sorundan çıkış yoluydu.
Shaamaan

2

Son düzeltmeyi almak için kullanılan görüntülenenleri değil, kullanılan sats sayısını kullanabilirsiniz. Örneğin. View = 11, Fix = 5 Ve en güçlü sat sinyalinin Max DB değerlerini kullanın. Düzgün bir sinyal alabilmek için bu 30Db'nin üzerinde olmalı.

Kullandığımız cihazların hareketli / hareketli olmayan bir konsepti vardır, sensörler: Hızlanma, titreşim, giriş gerilimi, giriş sinyali (ana kontaktan), GPS verisi. Başlat / durdur (olay temelli) ve cihazın hareketli modda olması gereken yön / mesafe olayları gibi konumlarını bildirmek için (bu bir geri sayım sayacı, yapılandırılabilir).

Sensörlerin birleştirilme imkanı vardır. İzleyici hareket modunda olmadığını belirlerken hiçbir yön / mesafe olayı veya zamanlayıcı rapor edilmiyor. Sensörler durmayı raporladığında, zamanlayıcı sıfıra kadar geri sayılır ve ardından bir durma olayı oluşturulur + ünite hareketsiz moda geçer. Bir daha ki sefere kadar. Bu şekilde, her ikisi de çok farklı ivmelenme düzenleri olduğundan, hareketli motorda 'motor' değerlerini 'hareketli' duruma getirmek için ayrı ve daha düşük bir eşik değerine ayırabilirsiniz.

Kullandığımız üniteler, donanım verilerinizin böyle olup olmadığından emin olmadığından, hatalı veri ile bir noktaya alınmadığını bildirir. Bir SV_Position veya SV_KeepAlive veya SV_TimeAlive sahibiz. Keepalive, GPS'in tablolarını güncelleyemediğinden ya da hiçbir şekilde doğru bir düzeltme alamadığı için son değeri tam olarak tekrarlayacaktır. TimeAlive, bir tüneli geçerken ya da birisini bir garajda park ederken göreceğiniz şeydir.

Ayrıca izlemenin bir yolu, kısmen eğitimli tahminler yapmak olsa da, bu izlemekte olduğunuz varlık türüne bağlı olarak voltaj güç kaynağıdır. Örneğin. 12.30v'da çalışan bir cihaz, motoru çalışmayan bir otomobildir. Eğer 14.2v rapor eden birini görürseniz, alternatörün döndüğünü bilirsiniz. 24v araçlar için noktaya benzer bir desen vardır.

Umarım sana fikir verir. Her şey biraz donanımın ne kadar iyi olduğuna bağlı. Verilerinizin kaynağı orada başlar ve ondan sonraki her şey ancak olduğu kadar iyidir. Ancak, birimleri her şeyi sunucuda yapmak yerine kalite ayrımı yapmak için birimler yeteneklerini kullanmanızı şiddetle tavsiye ediyorum. 3000 birimi beğendiğinizde, tüm izleme verilerini sürekli olarak analiz etmek için beefy bir sunucuya ihtiyacınız olacak, bu nedenle ölçeklenmeyeceğini fark edeceksiniz.


1
Gerilim toplama fikri hakkında yorum yapmak zorundayım. Bu mükemmel! Bazı araçlarla ilgili ciddi bir sorun yaşıyoruz ve neden olduğundan emin değiliz. Şu anda gerilim sorunları ile sonuçlanan izleme cihazlarını monte eden teknik elemanın zayıf becerilerinden kaynaklanabileceğinden şüpheleniyoruz, ancak sabotaj da olabilir (evet, sabotaj; yakıt seviyelerini ve sürücüleri izliyoruz) Bundan hoşlanmadım). Gerilim takip cihazlarına kaydedilebilirse, bu çok yardımcı olacaktır. :) Büyük yaşasın! (Birden fazla verirdim, ama ne yazık ki yapamam ...)
Shaamaan

İzleyici üniteniz arasında voltaj regülatörü bulunmayan her araç için çalışır. Bu bağlantıyı KCS konfigürasyon programından kontrol edin , bahsettiğim birim budur, sadece çalıştırın ve hareket algılama ile ilgili neler yapabileceğinizi görün, şaşıracaksınız. Bunu indirin , revizyon9 birimlerinin en son yazılımı budur. Gerilim fikri onlarındır. Orada bazı iyi varsayılanlar göreceksiniz (kamyon / araba / motor)
Glenn Plas

Sats sayısı kötü bir göstergedir, son düzeltmeyi almak için kullanılan sats sayısını gerçekten istersiniz (Baktığınız değer budur, mevcut durum göstergesi değildir). kesinlikle kötü noktaları belirlediğinizde, vasat kalite örnekleri gibi gri bölge çevresinde size yardımcı olmayacaktır. Farklı sensörleri birleştirmeniz gerekir. Hızı hesaplamak aslında GPS çipinizle aynı işlemi yapmakta olduğu gibidir ve bu kalite de aldığınız örnek sayısına (yollar her yerde düz değildir) ve bunların doğruluğuna bağlıdır. Civciv-yumurta problemi
Glenn Plas

0

Bir scooter izlemek için bir GPS kaydedici kullanırken benzer bir sorun yaşadım. Yaptığım şey, GPS yolunu bir yol katmanına bindirmek ve bir kavşak veya trafik ışığındaki veya yakınında bulunan hatalı yerleri manuel olarak silmekti. Muhtemelen kesişme noktalarındaki tamponlarda ve bu tamponun içinde ve dışında minimum ve maksimum zamanı hesaplayarak bununla başa çıkacak otomatik araçlar olduğundan eminim.


1
Otoparklar veya garajlar varken araçlar giderken sorunlu olduğu için, bu hiç de faydalı değildir. :(
Shaamaan

0

Bunun için sanatın terimi örümcek . Yaygın bir yaklaşım, yalnızca düzeltme önceki düzeltmeden 10m olduğunda yalnızca örneklemektir. Örneğin, Garmin el cihazlarını mesafeye bağlı olarak kayıt yaparken, spor saati ise süreye bağlı olarak kayıt düzeltme yapar . El bilgisayarları çok örümcek değil ama saatler.


Bunun terimi Çok
Yollu
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.