Spisu treści:
- Kieszonkowe dzieci
- Krok 1: BUDOWA
- Krok 2: OPROGRAMOWANIE
- Krok 3: WNIOSEK
- Krok 4: Formaty plików GPS i KML
Wideo: Śledzenie trasy GPS V2: 4 kroki (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
Projekt: Śledzenie trasy GPS V2
Data: maj - czerwiec 2020
AKTUALIZACJA
Pierwsza wersja tego projektu, choć działała w zasadzie, miała szereg usterek, które należało naprawić. Po pierwsze pudełko mi się nie podobało, więc wymieniłem je na inne. Po drugie, obliczenia dotyczące prędkości i odległości nie były poprawne. Dodatkowe testy terenowe z jednostką umieszczoną wewnątrz pojazdu i pozwoliły na wytyczenie trasy, a następnie ta zmapowana trasa została zmapowana na Wizualizator GPS i Google Earth Pro z doskonałymi wynikami zarówno pod względem rzeczywistej zmapowanej trasy, jak i obliczonej odległości mierzonej względem opcji „linijki” w Earth Pro
Ponadto obwody zostały zaktualizowane tak, aby akumulatory 18650 dostarczały zasilanie bezpośrednio do płyty DEV ESP32, podczas gdy jednostka NEO7M GSP była zasilana bezpośrednio z modułu Step Down, a nie przez płytę DEV. To stworzyło bardziej stabilny system. Oprogramowanie było ogólnie uporządkowane, a opcja e-mail i późniejsze połączenie z lokalnym routerem było wykonywane tylko wtedy, gdy urządzenie znalazło plik lub pliki dostępne do wysłania. Ostatnim ulepszeniem była zmiana testu „gps.location.isValid” na „gps.location.isUpdated”, co zapewniło, że tylko zaktualizowane lokalizacje GPS zostały zapisane w pliku trasy, a nie wiele lokalizacji GPS, z których każda ma tę samą szerokość i długość geograficzną
Zaznaczę w tym miejscu, że jest to pierwszy stworzony przeze mnie system oparty na GPS, a kolejne wersje w dużej mierze zastąpiłyby istniejące okablowanie płytką opartą na PCB. Aby zapewnić, że wszystkie połączenia przewodów nie ulegną awarii, podczas nieostrożnego obchodzenia się, wszystkie te połączenia zostały sklejone
Zaktualizowałem pliki ICO i Fritzing oraz dodałem nowe zdjęcia, aby pokazać wprowadzone przeze mnie zmiany
PRZEGLĄD
Ten projekt był dla mnie całkowitą zmianą kierunku, odchodząc od zegarów Nixie i robotów opartych na WiFi. Wykorzystanie modułu Arduino opartego na GPS intrygowało mnie od jakiegoś czasu, a ponieważ miałem trochę wolnego czasu czekając na dodatkowe części do głównego projektu, nad którym również pracuję, postanowiłem zbudować urządzenie do śledzenia trasy GPS, zasilane bateryjnie, lekkie, przenośny i zdolny do przesyłania informacji o trasie za pośrednictwem karty micro SD lub, jeśli dostępna jest sieć Wi-Fi, za pośrednictwem poczty e-mail i załączonego pliku. Ten projekt wymagał użycia czterech komponentów, których wcześniej nie używałem, a mianowicie ekranu OLED o przekątnej 0,96 cala, czytnika kart SD, modułu GPS i płytki rozwojowej ESP32. Ostateczny rozmiar urządzenia, choć z pewnością przenośny, można by jeszcze bardziej zmniejszyć, o pełne 25-50%, gdyby okablowanie, którego użyłem, zostało zastąpione płytką PCB przymocowaną bezpośrednio do płytki rozwojowej ESP32 i bateriami 18650 i obniżeniem moduł został zastąpiony odpowiednim akumulatorem Li-ion 5V.
Kieszonkowe dzieci
1. Płytka rozwojowa ESP32
2. Zegar RTC DS3231 z podtrzymaniem bateryjnym
3. Czytnik oparty na kartach Micro SD SPI, z kartą micro SD o pojemności 1 GB
4. Ekran OLED I2C o przekątnej 0,96 cala
5. Moduł GPS NEO-7M-0-000
6. Kondensator 10uF
7. Rezystory 2x10K, rezystor 4,7K;
8. Transformator obniżający napięcie DC-DC
9. 2x18650 baterie
10. Podwójny uchwyt baterii 18650
11. Przełącznik jednobiegunowy
12. Chwilowy przełącznik wciskany
13. Pudełka projektowe 2x100mmx50mmx65mm
14. Druty Dupont, gorący klej.
Krok 1: BUDOWA
Załączony schemat Fritzing pokazuje układ obwodu. Dwie baterie 18650 i moduł obniżający napięcie można zastąpić akumulatorem litowo-jonowym zapewniającym bezpośrednio 5 V. Polecam moduł NEO-7M ze zintegrowaną wtyczką anteny zewnętrznej SMA, która pozwala na dodanie prostego kawałka przewodu o długości 30 cm, który odbiera informacje z satelity, często zajmuje to kilka minut po pierwszym włączeniu urządzenia. Dolna z dwóch pudełek projektowych ma otwory na ekran, antenę GPS, przełącznik i kartę SD, zawiera również zegar RTC, czytnik kart SD, ekran OLED 0,96”, przycisk, moduł GPS i płytkę PCB. Górne pudełko projektowe zawiera płytkę rozwojową ESP32, baterie 18650 i uchwyt baterii, moduł obniżający i pojedynczy otwór na przełącznik jednobiegunowy. Górna część tego pudełka projektowego jest utrzymywana na miejscu za pomocą czterech śrub z łbem wpuszczanym, które można wyjąć, aby umożliwić wyjęcie, naładowanie, a następnie wymianę dwóch akumulatorów 18650. Urządzenie nie jest wodoodporne, ale może być tak wykonane. W górnej skrzynce projektowej można również zainstalować odpowiednią ładowarkę akumulatorów z interfejsem USB, z odpowiednim otworem, aby umożliwić ładowanie akumulatorów znajdujących się w środku bez konieczności zdejmowania pokrywy skrzynki. Podczas gdy moduł GPS może podać godzinę i datę uzyskaną z satelity, zdecydowałem, że bardziej odpowiedni będzie czas lokalny i data, więc dodałem moduł RTC.
Niektóre zdjęcia z budowy pokazują wczesny rozwój tego projektu, w którym używałem płyty WeMos D1 R2 i prostego wyświetlacza LED 16x2, oba zostały wymienione w ostatecznej wersji.
Krok 2: OPROGRAMOWANIE
Powodem, dla którego płyta Arduino oparta na ESP32 była taka, że po kilku badaniach odkryłem, że ESP32 może z powodzeniem wysyłać e-maile na konto G-Mail, pod warunkiem, że ustawienia konta zostaną zmienione tak, aby umożliwić „odbieranie mniej bezpiecznych wiadomości e-mail”, wymaga to zmiany ustawień konta G-Mail. Aby uzyskać do tego dostęp, przejdź do opcji menu „Zarządzaj kontem Google”, a następnie wybierz „Zabezpieczenia” i przewiń w dół, aż zobaczysz „Mniej bezpieczny dostęp do aplikacji”, włącz tę funkcję.
Będziesz musiał pobrać i zainstalować następujące pliki: TinyGPS++.h, SoftwareSerial.h, "RTClib.h", "ESP32_MailClient.h", "SPIFFS.h", WiFiClient.h, math.h, Wire.h, SPI.h, SD.h, Adafruit_GFX.h i Adafruit_SSD1306.h.
Program został opracowany przy użyciu wersji 1.8.12 Arduino IDE, a wybraną płytą była „DOIT ESP32 DEVKIT V1”.
Ze względu na rozmiar programu nie można go rozwijać na Arduino UNO, również podczas pobierania oprogramowania konieczne jest usunięcie przewodu TX z modułu GSP, w przeciwnym razie pobieranie się nie powiedzie. Kondensator 10uF został dołączony do pinów „EN” i „GND” płytki ESP32, dzięki czemu nie było potrzeby wciskania przycisku „EN” za każdym razem, gdy pobierany był nowy program.
Oprogramowanie Arduino zostało opracowane, aby umożliwić użytkownikowi systemu rejestrowanie trasy lub tras w urządzeniu, a następnie wyjęcie karty SD i przesłanie jej za pomocą czytnika kart opartego na komputerze PC lub wybranie opcji menu E-Mail i wszystkie pliki tras przechowywane w urządzeniu wysłane na konto G-Mail, jedna trasa dołączona do każdej wiadomości e-mail. Pliki tras są sformatowane w urządzeniu i mogą mieć postać dwóch różnych stylów, formatu „GPX”, który można bezpośrednio przeglądać za pomocą „GPS Viewer”, aplikacji Google dostępnej bezpłatnie w Internecie lub „KML” format, który można bezpośrednio przeglądać za pomocą aplikacji „Google Earth Pro” dostępnej do pobrania z Internetu. Ta sama aplikacja może również odczytywać i wyświetlać pliki tras oparte na „GPX”. Oba te formaty plików są swobodnie dostępne jako schematy formatów plików i można je znaleźć w Internecie na Wikipedii. Po wysłaniu e-maila lub e-maili urządzenie powróci do monitorowania trasy, jednak domyślnie będzie to format pliku GPX. Przycisk służy do wyboru opcji e-mail, wyboru formatu pliku GPX lub KML oraz do rozpoczęcia i zatrzymania nagrywania trasy. W trybie monitorowania trasy ekran OLED wyświetli długość i szerokość geograficzną aktualnej pozycji, a następnie na drugim ekranie wyświetli aktualny czas, datę, wysokość w metrach, liczbę używanych satelitów, prędkość w km i na koniec kurs podany jako jeden głównych punktów kompasu. Podczas gdy w trybie nagrywania trasy na ekranie zostanie wyświetlony plik trasy, który został otwarty, następnie oprócz dwóch wcześniej opisanych ekranów zostanie wyświetlony trzeci ekran, który zawiera szczegółowe informacje na temat używanego pliku trasy, liczby zapisanych punktów trasy i na koniec pokonany dystans w km.
Poniższe obrazy pokazują, w jaki sposób wiadomości e-mail, tworzone i wysyłane przez urządzenie, są odbierane i wyświetlane przez G-Mail.
Krok 3: WNIOSEK
Wiele się nauczyłem podczas opracowywania tego projektu, jednak ta jednostka może być uważana tylko za „zaplecze” systemu opartego na aplikacji, który wyświetla pliki GPX lub KML. Korzystanie z oprogramowania firm trzecich było dopuszczalną alternatywą dla dalszego rozwoju tego oprogramowania. Dostępność opcji menu „Mniej bezpieczna aplikacja” w menu Zarządzanie kontem Google może być ograniczona, ponieważ zmiany mogą nastąpić w czerwcu 2020 r., w takim przypadku może być konieczne przekierowanie wiadomości e-mail na alternatywne konto lub za pomocą portu 586 na serwerze pocztowym.
Krok 4: Formaty plików GPS i KML
Poniżej przedstawiono typową zawartość pliku dla każdego typu pliku generowanego przez urządzenie (wartości szerokości i długości geograficznej nie zmieniają się zbytnio w tych przykładach, ponieważ urządzenie jest nieruchome). Oba pliki zawierają minimalne dane nagłówka i stopki wymagane przez przeglądarkę GPS i Google Earth pro do wyświetlenia prostej czarnej linii pokazującej przebytą trasę:
Plik KML:
Plik GPX:
Zalecana:
Śledzenie ruchu za pomocą MPU-6000 i Particle Photon: 4 kroki
Śledzenie ruchu za pomocą MPU-6000 i Particle Photon: MPU-6000 to 6-osiowy czujnik śledzenia ruchu, który ma wbudowany 3-osiowy akcelerometr i 3-osiowy żyroskop. Ten czujnik jest w stanie skutecznie śledzić dokładne położenie i położenie obiektu w płaszczyźnie trójwymiarowej. Może być stosowany w
Śledzenie ruchu za pomocą MPU-6000 i Arduino Nano: 4 kroki
Śledzenie ruchu przy użyciu MPU-6000 i Arduino Nano: MPU-6000 to 6-osiowy czujnik śledzenia ruchu, który ma wbudowany 3-osiowy akcelerometr i 3-osiowy żyroskop. Ten czujnik jest w stanie skutecznie śledzić dokładne położenie i położenie obiektu w płaszczyźnie trójwymiarowej. Może być stosowany w
Śledzenie GPS w czasie rzeczywistym: 3 kroki
Śledzenie GPS w czasie rzeczywistym: W tym samouczku pokażemy, jak śledzić lokalizację w czasie rzeczywistym za pomocą BerryGPS-GSM, Raspberry Pi Zero i stanu początkowego. Wyślemy długość, szerokość geograficzną i prędkość przez 3G z BerryGPS-GSM do stanu początkowego
ŚLEDZENIE ROWERÓW LUB SAMOCHODÓW GPS ZE SMARTFONA: 9 kroków
ŚLEDZENIE ROWERÓW LUB SAMOCHODÓW GPS ZE SMARTFONA: Cześć, Witamy w Buzz Creativity. Tutaj pokazuję, jak śledzić swój rower lub samochód. Możesz śledzić lokalizację roweru na żywo za pomocą tego urządzenia. Możesz śledzić dowolny rower za pomocą tego urządzenia
Śledzenie krzywej półprzewodnikowej: 4 kroki (ze zdjęciami)
Semiconductor Curve Tracer: POZDROWIENIA! Znajomość charakterystyki działania dowolnego urządzenia jest niezbędna do uzyskania informacji na jego temat. Ten projekt pomoże ci wykreślić krzywe diod, bipolarnych tranzystorów złączowych typu NPN i tranzystorów MOSFET typu n na laptopie, w domu! Dla tych