GPS-трекер на базі ESP8266
GPS-трекер на базі ESP8266 з SD-карткою та web-інтерфейсом
Цей приклад демонструє, як можна зробити простий GPS-трекер за допомогою популярних електронних модулів. У цьому прикладі використовується Wi-Fi модуль ESP-12 на базі чіпа ESP8266. Прошивка NodeMCU та LUA-скрипти з відкритим кодом.Функції GPS-трекера
- Зберігає GPS-треки у форматі GPX
- Може зберігати GPS-треки на SD-картку або у внутрішню флеш-пам`ять Wi-Fi модуля
- Налаштування та перегляд треків через web- інтерфейс
- Завантаження файлів GPX на комп`ютер через web - інтерфейс
Необхідні компоненти
- Плата NodeMCU з модулем ESP-12E або аналогічна
- GPS-модуль GY-NEO6MV2 або аналогічний
- Адаптер карти MicroSD (не обов`язково)
- Powerbank або будь-яка інша система живлення
- З`єднувальні дроти
Прошивка і скрипти
Спершу у ESP8266 треба завантажити програмне забезпечення і тільки після цього зберати схему. Мається на увазі, що ви знаєте, як завантажити прошивку NodeMCU в ESP8266, і ви знаєте, як завантажувати файли в NodeMCU. Будь ласка, завантажте файли прошивки NodeMCU тут: https://github.com/avislab/NodeMCUExamples/tree/master/GPSTracker/FirmwareNodeMCU А потім завантажте їх до ESP8266. Це можна зробити різними інструментами, не обов`язково тими, що наведені у якості прикладу. Приклад завантаження прошивки за допомогою esptool:esptool.py --port COM10 write_flash 0x0 nodemcu-dev-21-modules-float.bin 0x3fc000 esp_init_data_default.bin Result: esptool.py v1.3 Connecting.... Auto-detected Flash size: 32m Running Cesanta flasher stub... Flash params set to 0x0040 Wrote 753664 bytes at 0x0 in 65.3 seconds (92.3 kbit/s)... Wrote 4096 bytes at 0x3fc000 in 0.4 seconds (87.4 kbit/s)... Leaving...Примітка: Якщо ви використовуєте інший модуль ESP, прочитайте тут інформацію про файл esp_init_data_default.bin Потім зкачайте всі файли з папки https://github.com/avislab/NodeMCUExamples/tree/master/GPSTracker і завантажте їх у NodeMCU. Приклад завантаження файлів в NodeMCU за допомогою nodemcu-uploader:
python nodemcu-uploader.py --port COM10 upload * Result: opening port COM10 with 115200 baud Preparing esp for transfer. Transferring cfg.lua as cfg.lua Transferring config.lua as config.lua Transferring distance.lua as distance.lua Transferring files.png as files.png Transferring http.lua as http.lua Transferring init.lua as init.lua Transferring loadcfg.lua as loadcfg.lua Transferring makeindex.lua as makeindex.lua Transferring map.html as map.html Transferring savecfg.lua as savecfg.lua Transferring sdcard.lua as sdcard.lua Transferring settings.html as settings.html Transferring settings.png as settings.png Transferring tracker.lua as tracker.lua Transferring wifi.lua as wifi.lua All done!
Схема
З’єднайте всі компоненти, як показано на схемі. Використання адаптера SD-картки не є обов`язковим, але Ви маєте усвідомити що загальний розмір файлів GPS-треків буде обмежений вільним простором у Flash пам`яті Wi-Fi модуля.Як працює GPS-трекер?
Запис GPS треку
Після включення живлення, зачекайте 3 секунди, світлодіод на платі має двічі блимнути. Тепер пристрій готовий. Якщо SD-карта успішно змонтована, ESP8266 буде використовувати SD-карту для запису треків. Якщо ні - буде використана внутрішня флеш-пам`ять Wi-Fi модуля. Щоб запустити запис GPS-треку, натисніть кнопку "Flash". Примітка: на цій платі кнопка Flash підключена до GPIO0. Подвійний спалах світлодіода вказує на те, що запис почався. Щоб зупинити запис, знову натисніть кнопку "Flash". Однин спалах світлодіода означає, що запис зупинено. Примітка: Формат файлу GPX, який використовується для GPS-треків, виглядає схожим на XML. Ось чому дуже важливо правильно завершити запис. При неправильному завершенні запису, наприклад якщо вимкнути живлення під час запису трека, файл треку буде містити дані, але не матиме фінішних XML-тегів (</trkseg></trk></gpx>). Ви не зможете переглянути такий файл GPS-маршруту, але проблему можна виправити. Просто додайте відсутні теги в кінці файлу. Ви можете використовувати будь-який текстовий редактор для перегляду та редагування файлу GPX. Кожного разу, коли починається запис треку, створюється новий файл з цифровим індексом у своєму імені. Наприклад: GPSTrack1.gpx, GPSTrack2.gpx, GPSTrack3.gpx і так далі. За замовчуванням GPS - точки записуються кожні 5 сек. Ви можете змінити цей період у налаштуваннях. Один короткий спалах світлодіода вказує на записування GPS-точки у файл треку. Але запис відбувається тільки тоді, коли GPS модуль вже визначив своє місцеположення. Іноді записувати у трек GPS координати кожні 5 секунд немає сенсу. Наприклад, коли ваше місцезнаходження не змінюється. У налаштуваннях Ви можете вказати дистанцію. Наступна GPS-точка треку буде записуватися, коли відстань між останніми записаними координатами та поточним положенням буде більше за вказану дистанцію. Цей метод зменшує розмір трек-файлів. Примітка: GPS-трекер не використовує Wi-Fi у режимі запису GPS-треків.Перегляд GPS-треків та налаштування
Перегляд треків та налаштування доступні у спеціальному режимі "view & settings". Щоб увімкнути цей режим, натисніть кнопку "Reset", а потім натисніть і утримуйте кнопку "Flash" до першого спалаху світлодіода. Після першого спалаху світлодіода відпустіть кнопку. Світлодіод повинен блимнути 4 рази. ESP8266 спробує підключитися до точки доступу Wi-Fi яка зазначена у налаштуваннях. Але ми ще не налаштовували наш пристрій і з`єднання не відбудеться. Ви можете ще раз натиснути кнопку "Flash", щоб увімкнути власну Wi-Fi точку доступу на ESP8266. Після увімкнення власної точки доступу, Ви можете підключитися до GPS-трекера за допомогою свого мобільного або ноутбука використовуючи такі данні: SSID: ESPWIFI Пароль: 1234567890 Тепер за допомогою web-браузера зайдіть на сторінку з адресою: http://192.168.4.1/ Цей режим дозволяє завантажувати, видаляти збережені GPS-треки та редагувати налаштування, але для перегляду GPS-треків на Google мапі потрібне підключення до Інтернету. Потрібно вказати домашню мережу Wi-Fi з доступом до Інтернету. Натисніть кнопку «Налаштування», потім вкажіть SSID, і пароль вашої домашньої Wi-Fi мережі і натисніть «Save options». Зміни налаштувань будуть застосовані після перезавантаження. Перезавантажте ESP8266 кнопкою "Reset", а потім натисніть і утримуйте кнопку "Flash", щоб увімкнути режим "view & settings". GPS-трекер буде підключатися до точки доступу Wi-Fi, яка призначить йому IP-адресу. Щоб дізнатись IP, вам треба зайти у панель керування Wi-Fi точки чи маршрутизатора. Зазвичай це робиться через web-інтерфейс. І знайти щось схоже на "DHCP Clients". У різних виробників роутерів та W-Fi AP цей пункт може відрізнятися. Припустимо, що IP 192.168.201.99. Тепер Ви можете підключитися до вашого GPS-трекера за допомогою web - браузера. Введіть URL: http://192.168.201.99 і переглядайте GPS-треки за допомогою Google Maps.Відео про GPS-трекер на ESP8266
Бажаю успіхів.Дивись також:
- ESP8266 NodeMCU Перше знайомство. Робимо WiFi розетку
- ESP8266 NodeMCU. PWM
- ESP8266 NodeMCU. ADC
- ESP8266 NodeMCU. timer, rtc, SNTP, cron
- ESP8266 NodeMCU. файлова система, SD Card
- ESP8266 NodeMCU. UART
- GPS-трекер на базі ESP8266
- GPS-трекер + Дисплей SSD1306
- ESP8266 NodeMCU. SSD1306. U8G
- ESP-01 (ESP8266) upgrade flash memory to 4MB
- ESP8266 NodeMCU. I2C. BME280/
- Метеостанція на ESP8266
Привіт, Друже, Мене звати Володимир, місто Київ. Знайшов ваший цікавий сайт про електроніку та ESP8266, яким я зараз захоплююсь. Сподобалось, що він українською. У вільний час намагаюся створити універсальну систему автоматичного поливу кімнатних рослин. Радий познайомитися. Володимир.
Просто супер!!!
Можно добавить mpu6050 и попробовать пропустить через фильтр Калмана.
Доброго дня. Підкажіть будб-ласка по роботі з SD-картками. Чи є тут якісь обмеження на об`єм карти? Чи можно повноцінно використовувати карту об`ємом 8-16 Гб?
Доброго дня. Весь об`єм картки я не пробував зайняти. Суммарно до 2 Гб у декількох файлах робило без проблем.
Не можу коректно отримати дані з neo6m. В мене трек пише, все як повинно бути. Але дані невірні, розташування моє не відповідає реальності. Тобто маршрут прокладається на карті зовсім в іншому місті ніж там де я є. Можливо потрібно провести додаткові налаштування.??? В відео автор завантажує 17 файлів а в посиланні https://github.com/avislab/NodeMCUExamples/tree/master/GPSTracker доступно 16 файлів немає mackeindex.lua Можливо я щось пропустив.???
Доброго дня. Файлу mackeindex.lua і не має бути. На відео він потрапив помилково. Проблема у іншому. Можливо, у налаштуваннях GPS модуля або у моєму софті. Ви можите надіслати мені приклад треку, який пишиться і свої реальні координати? Якщо зможите надіслати фрагмент даних, які видає GPS модуль - це буде чудово. Моя адреса [email protected]
Привет, для GPS-трекера, Не могу найти один файл для загрузки в ESP8255, mackeindex.lua, есть только makeindex.lua. Где его найти или можешь залить его на github?
Hallo from Germany, I am very interested in Your GPS tracker, as I prefer to program with LUA. Although I am a beginner with LUA. Unfortunately I only got as far as connecting to ESPWIFI. My computer connected, but I was not able to to start the page http://192.168.4.1/. It says connection was refused by server. Have got a hint where to look for the problem? Regards Derek Belz
Недавні записи
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
- U-FOC - Векторне керування безколекторними моторами
Tags
esp8266 examples adc usart rfid eb-500 soldering lcd stm32 raspberry-pi python mongodb gps mpu-9250 sensors led hih-4000 foc ngnix wifi servo sms ethernet bldc 3d-printer bluetooth mpx4115a web pmsm options remap solar timer bme280 mpu-6050 avr docker flash bkp capture gpio uart meteo i2c usb rtc encoder programmator ssd1306 battery displays java-script barometer watchdog eeprom flask websocket pwm dht11 motor ssd1331 piezo smd brushless atmega books css git st-link dc-dc html nodemcu dma nvic rs-232 exti tim bmp280 max1674
Архіви