Вы здесь:
Главная » Новое на сайте » Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

Простой GPS навигатор своими рукамиВо многих современных телефонах есть GPS, но для работы навигатора необходима подгрузка карт через интернет, что в дали от GSM вышек является проблемой. Также большая проблем — это быстрый разряд аккумулятора смартфонов, особенно в холодное время года. За раз путешественник остаётся не только без навигации, но и без связи. Иметь с собой независимое навигационное устройство будет очень кстати.  Подобное устройство и будет предлагаться в статье, ниже.

Цель данного устройства заключается в том, чтобы указать в каком направлении двигаться и показать оставшееся расстояние до точки, к которой нужно придти. Путешественнику нужно перед выходом сохранить контрольную точку, к которой хочет он вернуться. После этого стрелка будет указывать на место отправления и цифрами указываться расстояние. Конечно, необходимо чтобы спутники «ловились» и координаты текущего местоположения определялись.

Схема самодельного навигатора

Простой GPS навигатор своими руками

Схема строится на микроконтроллере ATMega64 с тактированием от внешнего кварцевого резонатора на 11,0592 МГц. За работу с GPS отвечает NEO-6M от U-blox, это хоть и старенький, но очень распространенный и недорогой модуль с достаточно точным определением координат. Информация выводится на дисплей от Nokia 3310 (5110). Еще в схеме присутствуют магнитометр HMC5883L и акселерометр ADXL335.

Простой GPS навигатор своими руками

HMC5883L достаточно распространенный и недорогой датчик, для общения с микроконтроллером используется стандартный I2C интерфейс.
Чип выпускается в крошечном 16-и выводном корпусе LPCC размерами 3х3 мм.

 Обозначение выводов:

  1. SCL — вход тактирования шины I2C
  2. VDD — вход для подключения питания (кормится эта козявка напряжением в диапазоне 2,16-3,6 вольт)
  3. не используется
  4. S1 — дополнительное питание для портов ввода/вывода. Подключается напрямую к выводу VDDIO
  5. не используется
  6. не используется
  7. не исползуется
  8. SETP — первый вход для подключения керамического конденсатора на 0,22uF
  9. GND — земля
  10. С1 — еще один вход для подключения конденсатора. Электролитичиского или танталового на 4,7uF (другой конец конденсатора подключается к земле)
  11. GND — земля
  12. SETC — второй вход для подключения керамического конденсатора на 0,22uF
  13. VDDIO — вход для подключения напряжения которое будет на портах ввода/вывода
  14. не используется
  15. Выход прерывания, когда данные готовы на этом выводе появляется логическая 1
  16. SDA — линия данных интерфейса I2C

Печатная плата навигатора

Простой GPS навигатор своими руками

Схема и плата спроектированы в системе EasyEDA.

Перед прошивкой контроллера рекомендую отключить GPS приемник, так как ножка RXD совмещена c линией MOSI и модуль может начать отправлять данные во время прошивки, что вызовет ошибку в загружаемой программе.

Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

Включение и выключение устройства происходит длинным нажатием на кнопку S5. После включения и поиска спутников (при холодном старте может уйти до 10 минут или даже больше) мы можем посмотреть текущие координаты, нажав на кнопку S2.

Простой GPS навигатор своими руками

Координаты конечной точки можно посмотреть нажав на кнопку S3.

Простой GPS навигатор своими руками

Нажав кнопку S4 попадаем в меню сохранения точки. Сохранить точку можно двумя способами:

  1. сохранить текущие координаты

Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

2. забить координаты вручную

Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

Вводим по очереди градусы, минуты и секунды. Выбранное значение для редактирования мигает.

Вернуться в режим следования к точке можно по короткому нажатию на кнопку S5

Простой GPS навигатор своими руками

Теперь об использовании магнитометра и акселерометра. Для расчета азимута используются данные полученные с GPS приемника, поэтому в случае если рассчитать координаты не возможно (например если спутники не видны или их мало) пропадает возможность и рассчитать направление в котором нужно двигаться, чтобы придти к точке. И первоначально моя задумка была в том, чтобы использовать магнитометр как вспомогательное средство для указания курса. Но столкнулся с некоторыми трудностями.

Во-первых. Кто знакомился с работой цифровых магнитометров знают что, точность их данных зависит от того в каком положении они находятся. Поэтому для корректной работы в любом положении необходимо использовать акселерометр, который бы давал более точную картину проекции магнитного поля на все три оси магнитометра. Возможное решение этой задачи я подсмотрел в одном журнале. но пока не осилил перенести весь расчет в Bascom (может кто-то из энтузиастов возьмется?).

Во-вторых, заметно сказывается различие магнитного склонения в разных частях Земли. Например в Поволжье магнитное склонение составляет 13°, а на другом конце страны склонение уже 11° и в другую сторону. А ведь есть еще и магнитное наклонение — когда линии магнитного поля входят или выходят под углом к горизонту, и много других факторов влияющих на показания.

Простой GPS навигатор своими рукамиПростой GPS навигатор своими руками

Конечно, для примерного указания направления можно использовать и такие не калиброванные данные с магнитометра, но пока решил оставить эту задумку и сделал простой компас, который тоже может быть полезен. Компас включается нажатием на кнопку S1. А для того чтобы он указывал более менее правильное направление на север (точнее на северный магнитный полюс), устройство необходимо держать горизонтально. Для помощи в этом по бокам экрана бегают две черточки, которые показывают наклон в ту или иную сторону.

Осталось распечатать на 3-D принтере под устройство корпус, а пока о результатах уличных испытаний. Девайс получился очень интересным и вполне очень даже помогающим выйти к сохраненной точке. Но нужно понимать, что миллиметровой точности ожидать не следует. Ошибка определения GPS координат всего в одну секунду даст неточность определения положения в 20 метров. Также погрешность неизбежно накапливается при округлении в математических расчетах. Но тем не менее устройство даже в городских условиях плотной застройки позволило вернутся к точке с точностью в несколько метров.

Простой GPS навигатор своими руками

Это устройство станет незаменимым помощником тем, кто любит побродить по лесу, грибникам, лыжникам, туристам и другим любителям природы!

Используемые в устройстве компоненты (их можно заказать в интернет-магазине из Китая):

  • GPS модуль NEO-6M
  • ЖК дисплей
  • Магнитометр HMC5883
  • Акселерометр ADXL335

Корпус для направлятора

Простой GPS навигатор своими руками

Простой GPS навигатор своими руками

>>Скачать: прошивки и архив с файлами модели (SolidWorks + STL)<<

P.S. По просьбам пользователей обновил прошивку (по ссылке выше две прошивки), исключив из схемы акселерометр и магнитометр. Теперь по нажатию на кнопку S1 будет выводится информация о напряжении на аккумуляторе, время и дата по UTC, а также азимут — тот же компас 🙂

Источник: avrproject






ПОДЕЛИТЕСЬ С ДРУЗЬЯМИ:


Популярность: 410 просм.
Вы можете следить за комментариями к этой записи через RSS 2.0. Вы можете оставить комментарий:.

Ваш комментарий


Прислать свою поделку!

А ТАКЖЕ ЕЩЁ ИНТЕРЕСНОЕ:



MasterVintik