You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/nl/3-transport/lessons/1-location-tracking/wio-terminal-gps-decode.md

3.6 KiB

Decode GPS-gegevens - Wio Terminal

In dit deel van de les decodeer je de NMEA-berichten die door de GPS-sensor van de Wio Terminal worden gelezen en haal je de breedte- en lengtegraad eruit.

Decodeer GPS-gegevens

Zodra de ruwe NMEA-gegevens van de seriële poort zijn gelezen, kunnen ze worden gedecodeerd met behulp van een open source NMEA-bibliotheek.

Taak - decodeer GPS-gegevens

Programmeur het apparaat om de GPS-gegevens te decoderen.

  1. Open het gps-sensor app-project als het nog niet geopend is.

  2. Voeg een bibliotheekafhankelijkheid toe voor de TinyGPSPlus bibliotheek aan het platformio.ini bestand van het project. Deze bibliotheek bevat code voor het decoderen van NMEA-gegevens.

    lib_deps =
        mikalhart/TinyGPSPlus @ 1.0.2
    
  3. Voeg in main.cpp een include-directive toe voor de TinyGPSPlus-bibliotheek:

    #include <TinyGPS++.h>
    
  4. Onder de declaratie van Serial3, declareer een TinyGPSPlus-object om de NMEA-zinnen te verwerken:

    TinyGPSPlus gps;
    
  5. Verander de inhoud van de printGPSData-functie in het volgende:

    if (gps.encode(Serial3.read()))
    {
        if (gps.location.isValid())
        {
            Serial.print(gps.location.lat(), 6);
            Serial.print(F(","));
            Serial.print(gps.location.lng(), 6);
            Serial.print(" - from ");
            Serial.print(gps.satellites.value());
            Serial.println(" satellites");
        }
    }
    

    Deze code leest het volgende karakter van de UART-seriële poort in de gps NMEA-decoder. Na elk karakter controleert het of de decoder een geldige zin heeft gelezen en vervolgens of het een geldige locatie heeft gelezen. Als de locatie geldig is, wordt deze naar de seriële monitor gestuurd, samen met het aantal satellieten dat heeft bijgedragen aan deze fix.

  6. Bouw en upload de code naar de Wio Terminal.

  7. Zodra de code is geüpload, kun je de GPS-locatiegegevens monitoren met behulp van de seriële monitor.

    > Executing task: platformio device monitor <
    
    --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
    --- More details at http://bit.ly/pio-monitor-filters
    --- Miniterm on /dev/cu.usbmodem1201  9600,8,N,1 ---
    --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
    47.6423109,-122.1390293 - from 3 satellites
    

💁 Je kunt deze code vinden in de map code-gps-decode/wio-terminal.

😀 Je GPS-sensorprogramma met gegevensdecodering is een succes!


Disclaimer:
Dit document is vertaald met behulp van de AI-vertalingsservice Co-op Translator. Hoewel we ons best doen voor nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in zijn oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor cruciale informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling.