W ofercie NavSpark dostępne są moduły zgodne z Arduino, oparte o układ integrujący mikrokontroler oraz odbiornik GPS. Możliwe jest zamówienie darmowej próbki NavSpark mini wraz z dołączonym modułem konwerterta USB<->UART NavSpark mini + USB adapter lub zestawu 6 szt NavSpark mini za 36$. Moduł o wymiarach 17x17mm nie posiada wbudowanej anteny GPS, należy podłączyć antenę zewnętrzną do gniazda na płytce. Poza modułem navspark-mini dostępne są płytki z większą ilością wyprowadzeń, zgodne z Arduino dedykowane do GPS, GPS/GLONAS, GPS/BEIDOU. Moduł w wersji mini został przetestowany z anteną GPS/GLONAS. Według opisu producenta moduł został oparty o 32b mikrokontroler z 1MB pamięci flash i 212kB RAM, FPU (IEEE-754) i odbiornik GPS. Mikrokontroler LEON3 Sparc-V8 taktowany częstotliwością 100MHz, na płytce mini dostępne są 1x UART, 1x SPI i 1xI2C (współdzielone z GPIO), oraz sygnał 1PPS (+/- 10ns).
Dla wersji zgodnej z Arduino dostępne są przykłady. Wersja mini nie jest zgodna ze wszystkimi przykładami, m.in ze względu na mniejszą liczbę wyprowadzeń i brak UART2. NavSpark mini można wykorzystać bez programowania, jako odbiornik GPS wysyłający informacje po UART. Pracę modułu możemy sprawdzić oprogramowaniem Windows GNSS Viewer. Program pozwala na aktualizację firmware, a także konfigurację modułu (np. zmianę ustawień UART na 115200 aby komunikować się z Arduino).
W tym materiale o GPS NEO-6M znajdziecie opis sentencji standardu NMEA-0183. Z wykorzystaniem modułu navspark-mini lub NavSpark Arduino możemy zrobić "swój" odbiornik GPS, który będzie przesyłał dane w wybranym przez nas formacie (np. NMEA wysyła współrzędne gdzie sekundy zapisane są w formie „dziesiętnej”, możemy zmienić format zapisu na minuty i sekundy lub dowolny inny). Możemy zrobić dużo więcej, reagować na określone okoliczności, lub np. podłączyć kartę SD do interfejsu SPI i rejestrować dane z modułu GPS.
Zgodnie z opisem http://www.navspark.com.tw/tutorial-1 łączymy płytkę konwertera USB<->UART z płytką navspark-mini.
Konwerter oparty jest o PL2303 w WIN10 powinien zainstalować się automatycznie, sterowniki dostępne są także tutaj: http://www.navspark.com.tw/downloads/ Urządzenie po zasileniu z USB pobiera prąd ~90mA.
W środowisku Arduino wybieramy Plik->Preferencje i dopisujemy linię:
http://navspark.mybigcommerce.com/content/package_navspark_index.json
w polu Dodatkowe adresy URL do menadżera płytek.
Wybieramy: narzędzia->płytka->menadżer płytek
wyszukujemy i instalujemy "navspark".
Następnie wybieramy: Narzędzia->płytka->NavSpark mini oraz Processor Leon3 with GNSS library, wybieramy właściwy port COM.
Przykładowe kody znajdziemy tutaj: http://www.navspark.com.tw/downloads
Spróbujmy na bazie NavSpark mini uruchomić proste urządzenie zapisujące kolejne dane GPS na kartę SD.
Opierając się na przykładzie demo_how_to_extract_gps_info możemy zapisać informacje z GPS na podłączonej karcie SD. Urządzenie pracuje z napięciem 3.3V więc płytka z gniazdem microSD nie potrzebuje stabilizatora i konwertera poziomów napięć.
Łączymy kartę SD z modułem:
DI <- MOSI GPIO30
DO -> MISO GPIO31
SCLK <- SCK GPIO29
CS <- CSNO GPIO28
Testując poniższy kod, dane o położeniu zapisywane są co minimum 60s na kartę SD. Zapis na kartę powoduje tracenie przez moduł "FIX", ale po kilkudziesięciu sekundach moduł odzyskuje możliwość ustalania położenia.
Na stronie producenta poza modułem w wersji mini, oraz w wersjach zgodnych z Arduino, znajdują się moduły o zwiększonej dokładności sygnału 1PPS (6ns), oraz zwiększonej dokładności pozycjonowania (1cm). Jest to ciekawe rozwiązanie hybrydowe, jednak moduły są dość mało popularne co przekłada się na małą ilość przykładów dostępnych w sieci.
Źródło:
http://www.navspark.com.tw/
http://navspark.mybigcommerce.com/navspark-mini-6pcs-pack/
Dla wersji zgodnej z Arduino dostępne są przykłady. Wersja mini nie jest zgodna ze wszystkimi przykładami, m.in ze względu na mniejszą liczbę wyprowadzeń i brak UART2. NavSpark mini można wykorzystać bez programowania, jako odbiornik GPS wysyłający informacje po UART. Pracę modułu możemy sprawdzić oprogramowaniem Windows GNSS Viewer. Program pozwala na aktualizację firmware, a także konfigurację modułu (np. zmianę ustawień UART na 115200 aby komunikować się z Arduino).
W tym materiale o GPS NEO-6M znajdziecie opis sentencji standardu NMEA-0183. Z wykorzystaniem modułu navspark-mini lub NavSpark Arduino możemy zrobić "swój" odbiornik GPS, który będzie przesyłał dane w wybranym przez nas formacie (np. NMEA wysyła współrzędne gdzie sekundy zapisane są w formie „dziesiętnej”, możemy zmienić format zapisu na minuty i sekundy lub dowolny inny). Możemy zrobić dużo więcej, reagować na określone okoliczności, lub np. podłączyć kartę SD do interfejsu SPI i rejestrować dane z modułu GPS.
Zgodnie z opisem http://www.navspark.com.tw/tutorial-1 łączymy płytkę konwertera USB<->UART z płytką navspark-mini.
Konwerter oparty jest o PL2303 w WIN10 powinien zainstalować się automatycznie, sterowniki dostępne są także tutaj: http://www.navspark.com.tw/downloads/ Urządzenie po zasileniu z USB pobiera prąd ~90mA.
W środowisku Arduino wybieramy Plik->Preferencje i dopisujemy linię:
http://navspark.mybigcommerce.com/content/package_navspark_index.json
w polu Dodatkowe adresy URL do menadżera płytek.
Wybieramy: narzędzia->płytka->menadżer płytek
wyszukujemy i instalujemy "navspark".
Następnie wybieramy: Narzędzia->płytka->NavSpark mini oraz Processor Leon3 with GNSS library, wybieramy właściwy port COM.
Przykładowe kody znajdziemy tutaj: http://www.navspark.com.tw/downloads
Spróbujmy na bazie NavSpark mini uruchomić proste urządzenie zapisujące kolejne dane GPS na kartę SD.
Opierając się na przykładzie demo_how_to_extract_gps_info możemy zapisać informacje z GPS na podłączonej karcie SD. Urządzenie pracuje z napięciem 3.3V więc płytka z gniazdem microSD nie potrzebuje stabilizatora i konwertera poziomów napięć.
Łączymy kartę SD z modułem:
DI <- MOSI GPIO30
DO -> MISO GPIO31
SCLK <- SCK GPIO29
CS <- CSNO GPIO28
Testując poniższy kod, dane o położeniu zapisywane są co minimum 60s na kartę SD. Zapis na kartę powoduje tracenie przez moduł "FIX", ale po kilkudziesięciu sekundach moduł odzyskuje możliwość ustalania położenia.
Na stronie producenta poza modułem w wersji mini, oraz w wersjach zgodnych z Arduino, znajdują się moduły o zwiększonej dokładności sygnału 1PPS (6ns), oraz zwiększonej dokładności pozycjonowania (1cm). Jest to ciekawe rozwiązanie hybrydowe, jednak moduły są dość mało popularne co przekłada się na małą ilość przykładów dostępnych w sieci.
Kod: C / C++
Źródło:
http://www.navspark.com.tw/
http://navspark.mybigcommerce.com/navspark-mini-6pcs-pack/
Fajne? Ranking DIY