# GPS ഡേറ്റ ഡികോഡ് ചെയ്യുക - Wio ടെർമിനൽ പാഠത്തിന്റെ ഈ ഭാഗത്തിൽ, Wio ടെർമിനൽ വഴി GPS സെൻസറിൽ നിന്നുമുള്ള NMEA സന്ദേശങ്ങൾ ഡികോഡ് ചെയ്ത്, അക്ഷാംശവും രേഖാംശവും പുറത്തെടുക്കും. ## GPS ഡേറ്റ ഡികോഡ് ചെയ്യുക Raw NMEA ഡേറ്റ സീരിയൽ പോർട്ടിൽ നിന്നു വായിച്ച ശേഷം, അത് ഒരു open source NMEA ലൈബ്രറി ഉപയോഗിച്ച് ഡികോഡ് ചെയ്യാവുന്നതാണ്. ### ടാസ്‌ക് - GPS ഡേറ്റ ഡികോഡ് ചെയ്യുക GPS ഡേറ്റ ഡികോഡ് ചെയ്യുന്നതിന് ഡിവൈസിനെ പ്രോഗ്രാം ചെയ്യുക. 1. `gps-sensor` ആപ്പ് പ്രോജക്റ്റ് തുറക്കാത്ത പക്ഷം അത് തുറക്കുക 1. [TinyGPSPlus](https://github.com/mikalhart/TinyGPSPlus) ലൈബ്രറിയുടെ ഡിപ്പൻഡൻസി പ്രോജക്റ്റിന്റെ `platformio.ini` ഫയലിൽ ചേർക്കുക. ഈ ലൈബ്രറിയിൽ NMEA ഡേറ്റ ഡികോഡിംഗിനുള്ള കോഡ് ഉണ്ട്. ```ini lib_deps = mikalhart/TinyGPSPlus @ 1.0.2 ``` 1. `main.cpp`-ൽ, TinyGPSPlus ലൈബ്രറിയുടെ ഇൻക്ലൂഡ് ഡയറക്റ്റീവ് ചേർക്കുക: ```cpp #include ``` 1. `Serial3`യുടെ പ്രഖ്യാപനത്തിന് താഴെ, NMEA വാചകങ്ങൾ പ്രോസസ്സ് ചെയ്യാൻ ഒരു TinyGPSPlus ഒബ്ജക്റ്റ് പ്രഖ്യാപിക്കുക: ```cpp TinyGPSPlus gps; ``` 1. `printGPSData` ഫങ്ഷന്റെ ഉള്ളടക്കം താഴെ കൽപ്പിക്കുക: ```cpp 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"); } } ``` ഈ കോഡ് UART സീരിയൽ പോർട്ടിൽ നിന്നുള്ള അടുത്ത അക്ഷരത്തെ `gps` NMEA ഡികോഡറിലേക്ക് വായിക്കും. ഓരോ അക്ഷരത്തിലും, ഡികോഡർ ശരിയായ വാചകം വായിച്ചതായോ അല്ലയെന്നും പരിശോധിക്കും, ശേഷം ശരിയായ സ്ഥാനം വായിച്ചതായോ ഇല്ലയെന്നുമു പരിശോധിക്കും. സ്ഥാനം ശരിയാണെങ്കിൽ, അത് സീരിയൽ മോണിറ്ററിലേക്ക് അയയ്ക്കും, കൂടാതെ ഈ ഫിക്സിന് സംഭാവന നൽകിയ സാറ്റലൈറ്റുകളുടെ എണ്ണം കൂടി. 1. കോഡ് ബിൽഡ് ചെയ്ത് Wio ടെർമിനലിലേക്ക് അപ് ലോഡ് ചെയ്യുക. 1. അപ് ലോഡ് ചെയ്തശേഷം, സീരിയൽ മോണിറ്റർ ഉപയോഗിച്ച് GPS സ്ഥിതിവിവരങ്ങൾ നിരീക്ഷിക്കാം. ```output > 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 ``` > 💁 നിങ്ങൾക്ക് ഈ കോഡ് [code-gps-decode/wio-terminal](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/wio-terminal) ഫോൾഡറിൽ കണ്ടെത്താം. 😀 ഡാറ്റ ഡികോഡിങുമായി നിങ്ങളുടെ GPS സെൻസർ പ്രോഗ്രാം വിജയകരമായി പൂർത്തിയായി! --- **അസ്വീകരണം**: ഈ അടിക്കുറിപ്പ് AI പരിഭാഷ സേവനം [Co-op Translator](https://github.com/Azure/co-op-translator) ഉപയോഗിച്ച് വിവർത്തനം ചെയ്തത് ആണ്. നാം വ്യത്യാസരഹിതത്വത്തിനായി പരിശ്രമിച്ചప్పഴും, യാന്ത്രിക വിവർത്തനങ്ങളിൽ തെറ്റുകൾ അല്ലെങ്കിൽ അസാമർത്ഥ്യങ്ങൾ ഉണ്ടാകാനുള്ള സാധ്യത നിലവിലുണ്ട്. അസൽ ഡോക്യുമെന്റ് അതിന്റെ സ്വദേശഭാഷയിൽ തന്നെയാണ് വിശ്വാസയോഗ്യമായ ഉറവിടം എന്നതു ശ്രദ്ധിക്കുക. പ്രധാന വിവരങ്ങൾക്ക് പ്രഫഷണൽ മനുഷ്യ വിവർത്തനം നിർദ്ദേശിക്കുന്നു. ഈ വിവർത്തനത്തിന്റെ ഉപയോഗത്തിൽ നിന്നുണ്ടാകുന്ന ഏതെങ്കിലും തെറ്റിദ്ധാരണകൾക്കും ദുരൂഹതകൾക്കും ഞങ്ങൾ ഉത്തരവാദികളല്ല.