avatar_kartal_0689

Bir değişkenin karşılaştırılması!

Başlatan kartal_0689, 15 Temmuz 2019, 11:05:32

kartal_0689

Merhaba,

GPS ile saniye verisi okuyorum.
Sorum şu: gelen saniye verisi bir öncekinden farklı olduğunda iş yaptırmam lazım.
Hatta sıralı geldiğini (bir önceki ile arasında 1 fark var ise sıralı geliyordur diye düşünüyorum) kontrol etmek istiyorum. bu konuda nasıl bir algoritma kurmak lazım. Denizi geçip derede boğuldum gibi düşündüm :)
TURKEY/ANK

BİDİL

NMEA zaten saniyede bir defa data yolluyor.Siz saniyede kaç kere okuma yapıyorsunuz? Amaç gelen datanın doğruluğunu tespit etmekmi? tam anlayamadım açıkçası.

kartal_0689

Alıntı yapılan: BİDİL - 15 Temmuz 2019, 11:38:50NMEA zaten saniyede bir defa data yolluyor.Siz saniyede kaç kere okuma yapıyorsunuz? Amaç gelen datanın doğruluğunu tespit etmekmi? tam anlayamadım açıkçası.

Evet gelen datanın doğruluğunu teyit etmek için.
UART interrupt ı içinden alıyorum veriyi. Dolayısıyla okumak için bir sürem yok.
Modül saniyede bir veri gönderiyor.
Amacım gelen saniye bilgisini düzgün alıp almadığımı teyit etmek için.
TURKEY/ANK

BİDİL

Nmea da hangi satırdan saat bilgisini alıyorsun?

Dtmf



kartal_0689

GGA' dan alıyorum. burayı kullanmamın sebebi aynı zamanda aktif uydu sayısını da kontrol ediyorum.
4 uydunun altında ise gelen veriyi sağlıksız olarak değerlendirip iş yapmıyorum.
TURKEY/ANK

BİDİL

#7
$GPGGA veya $GPRMC. Her ikisindede saat bilgisi mevcut ancak fix bilgisi ve saat $GPRMC de mevcut. Modül uyduya fixlendiğinde "A", fixlenmediğinde ise "B" bilgisi gelir. "A" bilgisi teyit edilmeden gelen bilgiler dikkate alınmaz çünkü soğuk uydudur. Bu bilgi geldikten sonra gelen datanın doğruluğu kabul edilir. GPS modülü çalışmaya başladığında iki buçuk dakika sonra bu bilgi gelir. Ben şahsen en az 4 dakika bekledikten sonra önce fix bilgisini kontrol ediyorum, ardından gelen bilgiyi doğru kabul ediyorum. cihaz hareket halinde ise iş biraz değişiyor.

Ben yerinde olsam şöyle yaparım;
GGA dan 4 uyduyu yakaladıktan sonra
RMC den önce fix bilgisini ardından yine RMC den saat bilgisini alırım. En sağlam yöntem bu olacaktır.

Ayrıca saat bilgisi için bir uydu yeterlidir. Enlem boylam kullanıyorsan başka tabi. Uyduların çokluğu saat bilgisinin doğruluğunu etkilemez.

Dtmf

Gps modul fix lendigi zaman flag cakmaya baslar.modul acik alanda olmasina ozan goster.sonrada pic ile serin komutu ile al gelen verileri islersin.sadece saat degil enlem boylam saat tarih hiz yukseklik deniz seviyesinden vs.birsuru bilgi mevcut

BİDİL

#kartal_0689 sorunun cevabı hariç herşeyi konuştuk :)) kusurumuza bakma.

kartal_0689

Alıntı yapılan: BİDİL - 15 Temmuz 2019, 15:51:08#kartal_0689 sorunun cevabı hariç herşeyi konuştuk :)) kusurumuza bakma.
:) desteğiniz için teşekkür ederim. Cevaplarınız yeterli benim için. Umarım konuyla ilgili başka arkadaşlara da yeterli olur.
yaptığım işlemler aşağıdaki gibi;
1- GPS modülün uyduya fixlendiği andaki pals çıkışını kontrol ediyorum.
2- Sonra Aktif uydu sayısı 4' den büyükse bir onay daha veriyorum.
3- Gelen saniye verisi bir önceki ile bakıp, peşpeşe düzgün geldiğini gördükten sonra herşey hazır diyorum.

Bu sistem aslında, birden fazla aynı ünitenin aynı anda çalışıp durması için (dakikada en az 35 kez) yapılıyor.
O yüzden senkron çalışması önemli.

zaten saniye bilgisi düzgün işlemediği zaman otomatik olarak GPS modülün pals çıkışı direkt çalışıyor.
ama saniye bilgisi ve yukarıdaki 3 madde sağlandığı zaman benim verdiğim sürelere göre çalışıyor.

Tekrar teşekkür ederim.
TURKEY/ANK

Powered by EzPortal