Skocz do zawartości

Wizualizacja danych GPS na mapie wysylanych przez GSM


Pomocna odpowiedź

Napisano

Mam układ zrobiony z STM32L4 +GPS+GSM. Pytanie jest takie, w jaki sposób moge te dane zwizualizować na mapie w prosty sposób? Jakaś aplikacja na androida gdzie mogę wysłać te dane modułem gsm, albo strona internetowa czy coś? Ewentualnie w jaki najprostszy sposób stworzyć taką aplikacje andriod/desktop/web aby mi te dane wizualizowały? Czy zostaje jedynie wiadomość zwrotna na mój telefon z linkiem do google maps?

Wcześniej myślałem nad thingspeak, ale teraz widze, że tam tylko wartości liczbowe moge wysłać i zobrazować je w formie wykresu lub zwykłej liczby, a mapa, którą widziałem na danym kanale, to jest na sztywno wklepana lokalizacja przy tworzeniu kanału, a nie pole, w które ja mogę wysyłać dane, aby się obrazowały na mapie. 

@Treker GPS na bieżąco wysyła dane do STM, gdzie są obrabiane i wysyłane modułem GSM. Myślałem aby pozycja była aktualizowana raz na minutę. I np. punkt na mapie zmieniał swoje położenie, albo żeby się rysowała ścieżka poruszania tego punktu (bardziej zaawansowana wersja) np. w zakresie 24h i po tym czasie resetowała. Ewentualnie myślałem jeszcze aby wysyłać dane do bazy mysql i zrobić prostą stronę z Google maps api i pobierać dane z bazy i wyświetlać je na stronie, tylko problem jest, że z tworzeniem baz i stron nie miałem zbytnio styczności.

Jeśli nie ma żadnych gotowych rozwiązań do takich systemów to pewnie najprościej będzie zrobić bazę danych z punktami + reszta już na serwerze. Google Maps lub OpenStreetMap. Skoro urządzenie i tak musi się komunikować z jakimś serwerem to tak będzie najwygodniej, ciężko w sumie nawet o jakąś inną opcję. W ramach inspiracji warto zerknąć na przykładowe projekty na ESP - jest sporo takich trackerów, przykład: https://blog.asksensors.com/iot-cloud-based-gps-tracking-esp32-gps-neo-6m-module/

  • Lubię! 1
(edytowany)
1 godzinę temu, Sup3r3k napisał:

GPS na bieżąco wysyła dane do STM, gdzie są obrabiane i wysyłane modułem GSM

Jak bezpieczne musi to być? Też nigdy nic z bazami nie robiłem, ani z PHPem, nie nic wielkiego w HTML, czy JS, ale kiedyś coś potrzebowałem, to po prostu zrobiłem plik *.txt zapisywany PHP z danych z GET. Dalej to pewnie wszystko da się okodować, tylko, czy nie łatwiej z bazy danych. Choć używanie pliku tekstowego ma wady. Nie ma problemu jak jedno urządzenie zapisuje do pliku co jakiś czas, ale jak już dwa na raz będą chciały, to wtedy co. Lipa. Albo odczyt pliku podczas zapisu. Też słabo.

Inną opcją poza resetowaniem o północy, może być zdejmowanie najstarszego odczytu przy zapisie nowego. Wtedy cały czas (no poza pierwszym rozruchem i jakimiś przestojami) jest 24-godzinny ślad, choć może być mniejszy.

Edytowano przez matsobdev
13 minut temu, matsobdev napisał:

czy nie łatwiej z bazy danych.

Na 100% łatwiej - sama baza dba o synchronizację odczyt/zapis, możesz trzymać dane z dłuższego okresu (bez przesady oczywiście, nie z 10 lat a ale np. z miesiąca) i wyświetlać dowolny okres.

GoogleMaps w API ma funkcje do wyświetlania trasy na mapie, tak że to kwestia pobrania sobie wartości z bazy w PHP z odpowiedniego okresu i wysłanie jej do przeglądarki.

1 godzinę temu, Sup3r3k napisał:

z tworzeniem baz i stron nie miałem zbytnio styczności.

Cóż - kiedyś trzeba zacząć. To wcale nie jest takie trudne.

Taka przykładowa tabela przechowująca punkty:


create table trasa (
    id BIGINT NOT NULL AUTO_INCREMENT,
    czas TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    lon FLOAT,
    lat FLOAT
    );

 

To cóż, bierzemy się za ogarnianie bazy danych i transmisji do niej danych modułem gsm. Dzięki wszystkim za pomoc. Pewnie jeszcze się będę tu udzielał 🙂 

  • 2 tygodnie później...

Wykorzystam jeszcze ten temat. Ogarnąłem wyświetlanie poprzez pythona, plotly i mysql.

Została mi jeszcze kwestia przesyłania z modułu gsm i pytanie: czy da się przesłać modułem gsm za pomocą at commands dane prosto do bazy danych( coś o mqtt czytałem, ale nie jestem pewien), czy trzeba np przesłać do thingspeak i napisać jeszcze program, który pobiera dane z thingspeak do bazy danych?

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...