GPS + QGIS. Na przykładzie GARMIN 60CSX oraz QGIS [v. 1.7.0]

Skąd pomysł na ten artykuł? Odbiorniki GPS są coraz powszechniejsze. Na szlaku coraz częściej spotykam ludzi, którzy mają odbiorniki na ramieniu lub przytwierdzone do kierownicy roweru. Jest to fajny gadżet, który pozwala odnaleźć się w terenie i z którym trudniej zgubić się w lesie.

Dodatkowo można nim zbierać dane geograficzne: punkty i linie. Jaka jest dokładność takich danych? Do pomiarów geodezyjnych takie odbiorniki się nie przydadzą, ale do  innych zastosowań  – owszem. Dość powiedzieć, że w większości na podstawie danych z tych urządzeń powstał OpenStreetMap. Za pomocą zwykłego turystycznego odbiornika zbierałem kiedyś dane o sieci dróg w gminie (innych danych nie było). Po prostu jeździłem samochodem po wszystkich drogach z włączonym odbiornikiem. Zebrane w ten sposób dane znakomicie nadawały się do zastosowań kartograficznych…

Dużo ludzi ma problemy z transferem danych z odbiornika do komputera i odwrotnie. Mam nadzieję, że ten wpis pomoże.

Używam Garmina 60CSX. Model stary, ale jary. Od dłuższego czasu na rynku funkcjonuje jego następca (seria Garmin GPSmap 62), ale jeszcze nie miałem okazji się nim bawić. Garminy są bardzo popularne na rynku outdoorowych odbiorników. Dlaczego? To temat na osobny wpis, ale na pewno ilość darmowych map do pobrania z sieci, możliwość tworzenia własnych map oraz spora grupa aktywnych użytkowników ma w tym swój udział. Nie mam telefonu, tabletu ani innego urządzenia z wbudowanym GPS, więc o nich w ogóle nie będę pisał. Nie wiem jaka jest dokładność ich lokalizacji, jakie są możliwości zbierania śladu, komunikacji z komputerem itp… Do rzeczy.

Zbieranie danych

Punkty, czyli waypointy.

Tu nie ma dużej filozofii. Będąc w terenie wciskamy przycisk na obudowie: „Mark” i punkt zapisuje się w pamięci. Możemy nadać mu nazwę, przypisać ikonę, a nawet dokonać modyfikacji we współrzędnych i w wysokości. Większość modeli obsługuje waypointy w ten sam sposób. Tak zapisany punkt wędruje do pamięci wewnętrznej.

Tracki, czyli linie

Tu już sprawa nie jest taka prosta, bowiem są dwie możliwości. Po wejściu w menu główne (przycisnąć 2x menu), w górnym lewym rogu pokaże się ikona „Tracks” (lub jej polskie tłumaczenie w zależności od wersji oprogramowania). Po podświetleniu ikony i po naciśnięciu „Enter” przechodzimy do menu „Tracks”. Pierwszy obrazek z trójki po lewej. Jeżeli uaktywnimy „on” odbiornik zaczyna rejestrować ślad i zapisywać go w swojej wewnętrznej pamięci. Od tej pory jest to ślad aktywny Pasek pokazuje ile jeszcze tej pamięci pozostało. W moim odbiorniku pamięci wystarcza na 10 000 punktów. Zakładając punktowanie co 15 sekund wychodzi kilka dni marszu. I tu jest problem! Co zrobić, kiedy miejsce zaczyna się kończyć lub zbieramy ślad co sekundę? Można zapisać ślad aktywny (opcja „save”). Wtedy nadajemy śladowi nazwę i wędruje on do wewnętrznej pamięci. Przychodzimy do domu, zgrywamy ślad i… tragedia. Ślad jest totalnie zgeneralizowany. Z tylko sobie wiadomych przyczyn odbiornik zapisując ślad zmniejsza jego objętość do 500 punktów (czyli dwudziestokrotnie). Z tym już nic nie da się zrobić.

Ale! Jest rozwiązanie. W opcjach zapisu klikamy „Data card setup” i dalej „Log track to data card”. Dzięki temu ślad będzie zapisywany dwutorowo – w pamięci wewnętrznej i na karcie pamięci. W tym wypadku ogranicza nas tylko pojemność pamięci na karcie. Nawet jeżeli GPS będzie wskazywał, że ślad zajmuje już 99% wydzielonej pamięci wewnętrznej to na karcie ślad będzie się dalej zapisywał. Jak odczytać tak zapisany ślad? Wystarczy podłączyć odbiornik poprzez kabel USB do komputera i wybrać menu-> setup -> interface -> USB mass storage. Garmin zacznie zachowywać się jak zwykła pamięć zewnętrzna (np. pendrive) i w przypadku systemu Windows będzie można do niego dotrzeć poprzez Mój komputer -> dysk (D,E, F – zależy od konfiguracji). W katalogu Garmin znajdować się będą „czyste” pliki GPX, które można otworzyć w każdym obsługującym je oprogramowaniu (choćby Google Earth). Będą to pojedyncze pliki o nazwie powiązanej z datą. Plik z dzisiaj będzie się nazywał 20110518.gpx. W pliku znajdują się wszystkie ślady zarejestrowane danego dnia. Bez ograniczeń wielkości pliku, bez generalizacji.

Routes, czyli nie wiadomo co.

Nie przypominam sobie, żebym kiedykolwiek używał tego typu danych. Teoretycznie za ich pomocą można wyznaczyć sobie trasę… ale w praktyce mają wąskie zastosowanie i nie znam nikogo, kto by ich używał.

Transfer danych z odbiornika do QGIS

Waypointy.

Skoro już zapisaliśmy interesujące punkty za pomocą waypointów to ściągnijmy je teraz na dysk i zróbmy z nich coś pożytecznego. Zakładam, że QGIS jest włączony. Do wersji 1.7.0 wtyczka „Narzędzie GPS” jest dodawana automatycznie. Wystarczy więc podłączyć odbiornik do komputera poprzez kabel usb, wejść we wtyczki -> GPS -> narzędzie GPS -> przejść do zakładki „Pobierz z GPS” i wypełnić podobnie jak na rysunku poniżej.

Po kliknięciu OK w odpowiednim miejscu na dysku utworzy się plik GPX a do projektu zostaną wczytane wszystkie punkty. Korzystając z możliwości QGIS można przekonwertować je do dowolnego formatu (np. SHP) i wykorzystać do pożądanych celów. Tabela atrybutów powstałej warstwy zawierać będzie wszelkie dane, jakie przypisane były punktowi w pamięci wewnętrznej.

Tracki

W przypadku śladu aktywnego i zapisanego w pamięci wewnętrznej odbiornika, należy postąpić podobnie jak w przypadku waypointów. Jedyną różnicą jest wybór innego typu obiektu (w polskim tłumaczeniu będą to ślady). Jeżeli zapisywaliśmy ślady na karcie pamięci. Podłączamy odbiornik w trybie pamięci masowej i pobieramy gotowe pliki GPX. Otwieramy je w QGIS i działamy.

Transfer z QGIS do odbiornika.

Waypointy

1) Tworzymy plik GPX.

Jeżeli mamy gotowy (np. dostaliśmy e-mailem od znajomego) – przechodzimy do punktu 2.

Możemy go utworzyć konwertując SHP (lub jakikolwiek inny) klikając prawym klawiszem na nazwie pliku wczytanego do QGIS i wybierając „zapisz jako…” Wybieramy GPX i zapisujemy. Możemy także stworzyć pusty plik GPX i przekopiować do niego punkty z pliku SHP. Sposobów jest wiele.

2) Ponieważ wtyczka GPS widzi tylko pliki wczytane do projektu przez nią samą, najlepiej otworzyć nowy projekt QGIS i wczytać utworzony przed chwilą plik ponownie, ale za pomocą wtyczki GPS. Wybieramy zakładkę „Wczytaj plik GPX”, zaznaczmy, że interesują nas waypointy (punkty nawigacyjne) i klikamy OK.

(uwaga!!! Aby wysłać plik GPX do odbiornika plik musi być wczytany również poprzez wtyczkę – zakładka „Wczytaj plik GPX”. Nie wiem czemu wtyczka nie widzi plików GPX wczytanych tradycyjnie poprzez „wczytaj warstwę wektorową”.)

3) Plik zostanie wczytany do QGIS. Można go obejrzeć w oknie mapy. Następnie wybieramy zakładkę: „Prześlij do GPS”: Jeżeli przed chwilą wczytana warstwa jest jedyną, która aktualnie jest w projekcie – zostanie automatycznie załadowana do wysłania. Klikamy OK.

Wysłane. Teraz w odbiorniku mamy waypointy.

Tracki (ślady)

Tu sytuacja wygląda bardzo podobnie. Wczytujemy plik jako ślad i wysyłamy do odbiornika. Należy pamiętać, że ślad zostanie zapisany w pamięci wewnętrznej . Zobaczymy go na liście zapisanych śladów. Poniższe ćwiczenie pokazuje jak to wykonać krok po kroku.

Ćwiczenie:

1. Za pomocą QGIS tworzymy nową warstwę GPX

2. Edytujemy track

3. Wysyłamy go do odbiornika

4. Wyświetlamy ślad w odbiorniku.

Do dzieła

1. Wtyczki -> GPS -> Utwórz nową warstwę GPX. Wybieramy nazwę i miejsce zapisu na dysku. Ja wybrałem geostrona.gpx na pulpicie

2. Edytujemy track. Mając zaznaczoną warstwę geostrona, tracks, klikamy na niebieski ołówek i „edytuj linię”, dwie ikonki dalej na prawo. Możemy zdigitalizować jakąś drogę z zeskanowanej mapy… (mapa musi być w układzie wgs84). Ja postanowiłem się pobawić…

Plik, który jest wpisany do projektu i ma nazwę „tracks” to zapis mojej wycieczki rowerowej. Wczytałem go do QGIS aby mieć odniesienie i automatycznie ustawić okno mapy na interesujący mnie region. Utworzyłam dwa ślady (dlatego na obrazku zamieściłem tabelę atrybutów). Jest to o tyle istotne, że obydwa zostaną wyeksportowane i zapisane jako osobne ślady w odbiorniku.

3. Wysyłamy do Garmina

4. Ślady wyeksportowane, zapisane i wyświetlone na mapie.

Podsumowanie

Ja więcej od odbiornika nie potrzebuje. Oczywiście są specyficzne potrzeby, których ten wpis nie zawiera. Na potrzeby zawodów sportowych (np. paralotniarskich) potrzebny jest aktywny ślad. Tak zwany G-record, który daje gwarancję, że nikt nie majstrował przy pliku GPX i pochodzi on prosto z urządzenia. Ale paralotniarze (i inni sportowcy) mają swój soft, który im wszytko z odbiornika pobiera i sprawdza co trzeba.

Zrzuty wykonane za pomocą programu Garmin xImage.