Új hozzászólás Aktív témák

  • gazso75

    aktív tag

    Sziasztok, nemrég csináltam a aksiról működő GPS loggert. Minden szépen működik, log-ol SD-re, veszi a jelet, stb. Egy bajom van, kb.200 mérésenként egyszer van 1 hibás mérés ( logol egyet Franciaországba, Kongoba, Mongóliába :) ) Tudtok e segíteni abban, hogy miként tudnám elcsípni a rossz koordinátát SD-re írás előtt, hogy utólag ne kelljen mókolni a térkpre importáláskor.
    kód elején:
    double prev_lat = 0;
    double prev_lon = 0;
    boolean first = true;

    loopba:
    void loop()
    {
    // If we have data, decode and log the data
    while (ss.available() > 0)
    {
    if(first)
    {
    prev_lat = gps.location.lat();
    prev_lon = gps.location.lng();
    first = false;
    // continue;
    }
    if (gps.encode(ss.read()))
    logInfo();

    }
    // Test that we have had something from GPS module within first 10 seconds
    if (millis() > 10000 && gps.charsProcessed() < 10)
    {
    // Set error led
    digitalWrite(GpsLedPin, HIGH);

    // Wiring error so stop trying
    while(true);
    }
    }

    digitalWrite(GpsLedPin, LOW);

    if(millis() - previous > frequency)
    {
    if(abs(prev_lat - gps.location.lat()) > 1 || abs(prev_lon - gps.location.lng()) > 1)
    {
     

    A cél ugye az lenne, hogy ha 1 egész számmal eltér a lat, vagy long érték az előző értéktők, akkor ne írja SD-ra.

    A teljes kód a pastebin-en: [link]

Új hozzászólás Aktív témák