sonyps4.ru

Gps трекер из телефона своими руками схема. GPS-трекер для машины своими руками

В специализированных магазинах доступен широкий ассортимент GPS-устройств разных ценовых категорий. Мощные модели с расширенным функционалом довольно дорого стоят, а простейшие маячки отличаются доступной ценой. Тем не менее многие пытаются избежать расходов и изготовить GPS-маячок своими руками. Насколько сложна эта задача, что понадобится для ее решения и оправдают ли себя затраченные усилия?

Использование смартфона для GPS-слежения

Чтобы использовать смартфон с функцией GPS в качестве GPS-трекера или маяка, нужно немного поработать с программным обеспечением. Сделать своими руками GPS-трекер из телефона на базе Android, Windows Mobile или iOS очень просто, никакого вмешательства в его конструкцию не понадобится. Если смартфон будет применяться как автомобильный трекер, придется выполнить несложные манипуляции по его подключению к электросети ТС.

Существует несколько приложений, позволяющих превратить смартфон в трекер. Для устройства на платформе Android можно скачать на Google Play приложение Loki, запустить его на смартфоне и выполнить настройки. Рекомендуется активировать такие функции:

  • автозапуск;
  • уведомления (по желанию);
  • внешнее питание (использование альтернативных настроек при подключении к внешнему источнику питания);
  • полное пробуждение (по желанию);
  • обработка команд.

Для навигации (определения местоположения) рекомендуется установить интервал обновления данных один раз в минуту, для отсылки SMS-сообщений при исчезновении связи с сервером ограничение по времени – 5 минут. Настройки в разделе «События» осуществлять в соответствии с собственными потребностями.

После выполнения настроек остается зарегистрироваться на сайте Asgard и добавить свое устройство, указав идентификатор, определенный программой Loki. Если в результате на карте сайта появилась отметка вашего местоположения, значит, все сделано правильно, и смартфон можно использовать в качестве трекера, отслеживая его местонахождение через Asgard.

Также для Android можно использовать приложение GPShome Tracker, а для Windows Mobile – GpsGate Client for Pocket PC. Превращая смартфон в трекер или маячок, крайне важно правильно настроить часовой пояс.

Для определения координат через сети Wi-Fi и GSM, устройство должно иметь доступ к безлимитному мобильному интернету, так что нужно выбрать тариф, позволяющий оптимизировать затраты. Если телефон будет использоваться исключительно как трекер, лучше установить SIM-карту только для выхода в интернет, а не для звонков. Использование GPS-приемника, повышающего точность определения координат, – весьма энергоемкий процесс, так что следует позаботиться об обеспечении питания самодельного трекера. Для этого нужно обрезать нижний конец автовилки (штекера прикуривателя) и вставить шнур зарядного устройства телефона в USB-разъем. Для подключения трекера напрямую к бортовой системе нужно купить понижающий конвертер постоянного тока. А те, кто немного разбирается в электронике, могут собрать аналог конвертера из пары конденсаторов и стабилизатора.

Если самодельный трекер (маячок) планируется использовать для скрытого слежения за перемещением автомобиля, нужно продумать, где его спрятать так, чтобы в случае необходимости можно было легко достать. И не забудьте активировать беззвучный режим, если в телефоне установлена карта для интернета и звонков.

Как сделать GPS-маячок своими руками из обычного телефона

Простейшую модель мобильного телефона без GPS тоже можно превратить в маяк, но для этого понадобится дополнительное оборудование и придется приложить больше усилий. Необходимые материалы и инструменты:

  • мобильный телефон;
  • GPS/GPRS-модуль;
  • GPS-приемник;
  • переходник (можно использовать старое зарядное устройство с рабочим штекером);
  • нож и паяльник.

Обрезав зарядное устройство со стороны блока питания, нужно зачистить провода и припаять их к плате модуля, а штекер вставить в разъем питания телефона. Затем включается приемник и настраивается телефон. С помощью такого устройства можно отслеживать местонахождение мобильных телефонов, принадлежащих членам вашей семьи. Информация об их координатах будет приходить на мобильник, объединенный с GPS-модулем, в виде обычных текстовых сообщений.

Некоторые операторы сотовой связи предлагают услугу «Маячок», активировать ее можно на любом мобильном телефоне без GPS-модуля. Составляется список контактов абонентов, местонахождение которых требуется отслеживать. Чтобы получить сообщение с координатами, нужно отправить запрос установленной формы.

Можно ли сделать GPS-трекер без телефона

Есть альтернатива использованию смартфона или телефона в комплексе с GPS-модулем – любое устройство с функцией GPS (ноутбук, КПК). Принцип такой же, как для смартфона, – установка приложения, настройки, регистрация устройства на сайте.

А можно ли собрать своими руками сам GPS-модуль и приемник, из которых состоит маяк или трекер? Вот некоторые компоненты, входящие в состав этих устройств:

  • фоторезистор, обычно коротковолновый;
  • операционный усилитель на базе биполярных транзисторов;
  • выпрямитель;
  • контроллер конденсаторного типа;
  • сетчатые фильтры;
  • импульсный триггер.

Все эти детали можно купить, а схему устройства – найти в интернете, но далеко не всем под силу разобраться, как сделать GPS-трекер своими руками.


Преимущества и недостатки самодельной конструкции

Если используется старый и ненужный телефон (смартфон), то основное преимущество его переделки в трекер – экономия. Если приобретать аппарат специально для этой цели, экономия от изготовления GPS-трекера своими руками практически неощутима. Конструкция из мобильного телефона и GPS-модуля получается довольно громоздкой, человеку носить ее с собой неудобно, а при установке в автомобиле велик риск обрыва проводов. Смартфон в качестве трекера или маячка использовать удобнее, но только для слежения за людьми. Его установка на автомобиле – это не самое удачное решение, оригинальный трекер обладает рядом преимуществ перед самоделкой:

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

Если использовать смартфон в качестве устройства скрытого слежения, функции коммуникатора он выполнять уже не сможет.

Лучше купить GPS-трекер или маячок, чем использовать самодельное устройство на базе смартфона или обычного мобильного телефона. Заводской трекер надежнее, удобнее в установке на транспортное средство, выполняет больше функций. Затраты на покупку трекера не так уж велики, а превращение смартфона в устройство слежения оправдано только при наличии ненужного аппарата.

После нескольких экспериментов с ардуиной решил сделать простенький и не очень дорогой GPS-tracker с отправкой координат по GPRS на сервер.
Используется Arduino Mega 2560 (Arduino Uno), SIM900 - GSM/GPRS модуль (для отправки информации на сервер), GPS приёмник SKM53 GPS.

Всё закуплено на ebay.com, в сумме около 1500 р (примерно 500р ардуина, немного меньше - GSM модуль, немного больше - GPS).

GPS приемник

Для начала нужно разобраться с работой с GPS. Выбранный модуль - один из самых дешевых и простых. Тем не менее, производитель обещает наличие батарейки для сохранения данных о спутниках. По даташиту, холодный старт должен занимать 36 секунд, однако, в моих условиях (10 этаж с подоконника, вплотную зданий нет) это заняло аж 20 минут. Следующий старт, однако, уже 2 минуты.

Важный параметр устройств, подключаемых к ардуине - энергопотребление. Если перегрузить преобразователь ардуины, она может сгореть. Для используемого приемника максимальное энергопотребление - 45mA @ 3.3v. Зачем в спецификации указывать силу тока на напряжении, отличном от требуемого (5V), для меня загадка. Тем не менее, 45 mA преобразователь ардуины выдержит.

Подключение
GPS не управляемый, хотя и имеет RX пин. Для чего - неизвестно. Основное, что можно делать с этим приемником - читать данные по протоколу NMEA с TX пина. Уровни - 5V, как раз для ардуины, скорость - 9600 бод. Подключаю VIN в VCC ардуины, GND в GND, TX в RX соответствующего serial. Читаю данные сначала вручную, затем с использованием библиотеки TinyGPS. На удивление, всё читается. После перехода на Uno пришлось использовать SoftwareSerial, и тут начались проблемы - теряется часть символов сообщения. Это не очень критично, так как TinyGPS отсекает невалидные сообщения, но довольно неприятно: о частоте в 1Гц можно забыть.

Небольшое замечание относительно SoftwareSerial: на Uno нет хардверных портов (кроме соединённого с USB Serial), поэтому приходится использовать программный. Так вот, он может принимать данные только на пине, на котором плата поддерживает прерывания. В случае Uno это 2 и 3. Мало того, данные одновременно может получать только один такой порт.

Вот так выглядит «тестовый стенд».

GSM приемник/передатчик


Теперь начинается более интересная часть. GSM модуль - SIM900. Он поддерживает GSM и GPRS. Ни EDGE, ни уж тем более 3G, не поддерживаются. Для передачи данных о координатах это, вероятно, хорошо - не будет задержек и проблем при переключении между режимами, плюс GPRS сейчас есть почти везде. Однако, для каких-то более сложных приложений этого уже может не хватить.

Подключение
Модуль управляется также по последовательному порту, с тем же уровнем - 5V. И здесь нам уже понадобятся и RX, и TX. Модуль - shield, то есть, он устанавливается на ардуину. Причем совместим как с mega, так и с uno. Скорость по умолчанию - 115200.

Собираем на Mega, и тут нас ждет первый неприятный сюрприз: TX пин модуля попадает на 7й пин меги. На 7м пину меги недоступны прерывания, а значит, придется соединить 7й пин, скажем, с 6м, на котором прерывания возможны. Таким образом, потратим один пин ардуины впустую. Ну, для меги это не очень страшно - всё-таки пинов хватает. А вот для Uno это уже сложнее (напоминаю, там всего 2 пина, поддерживающих прерывания - 2 и 3). В качестве решения этой проблемы можно предложить не устанавливать модуль на ардуину, а соединить его проводами. Тогда можно использовать Serial1.

После подключения пытаемся «поговорить» с модулем (не забываем его включить). Выбираем скорость порта - 115200, при этом хорошо, если все встроенные последовательные порты (4 на меге, 1 на uno) и все программные работают на одной скорости. Так можно добиться более устойчивой передачи данных. Почему - не знаю, хотя и догадываюсь.

Итак, пишем примитивный код для проброса данных между последовательными портами, отправляем atz, в ответ тишина. Что такое? А, case sensitive. ATZ, получаем OK. Ура, модуль нас слышит. А не позвонить ли нам ради интереса? ATD +7499… Звонит городской телефон, из ардуины идет дымок, ноутбук вырубается. Сгорел преобразователь Arduino. Было плохой идеей кормить его 19 вольтами, хотя и написано, что он может работать от 6 до 20V, рекомендуют 7-12V. В даташите на GSM модуль нигде не сказано о потребляемой мощности под нагрузкой. Ну что ж, Mega отправляется в склад запчастей. С замиранием сердца включаю ноутбук, получивший +19V по +5V линии от USB. Работает, и даже USB не выгорели. Спасибо Lenovo за защиту.

После выгорания преобразователя я поискал потребляемый ток. Так вот, пиковый - 2А, типичный - 0.5А. Такое явно не под силу преобразователю ардуины. Нужно отдельное питание.

Программирование
Модуль предоставляет широкие возможности передачи данных. Начиная от голосовых вызовов и SMS и заканчивая, собственно, GPRS. Причем для последнего есть возможность выполнить HTTP запрос при помощи AT команд. Придется отправить несколько, но это того стоит: формировать запрос вручную не очень-то хочется. Есть пара нюансов с открытием канала передачи данных по GPRS - помните классические AT+CGDCONT=1,«IP»,«apn»? Так вот, тут то же самое нужно, но слегка хитрее.

Для получения страницы по определенному URL нужно послать следующие команды:
AT+SAPBR=1,1 //Открыть несущую (Carrier) AT+SAPBR=3,1,"CONTYPE","GPRS" //тип подключения - GPRS AT+SAPBR=3,1,"APN","internet" //APN, для Мегафона - internet AT+HTTPINIT //Инициализировать HTTP AT+HTTPPARA="CID",1 //Carrier ID для использования. AT+HTTPPARA="URL","http://www.example.com/GpsTracking/record.php?Lat=%ld&Lng=%ld" //Собственно URL, после sprintf с координатами AT+HTTPACTION=0 //Запросить данные методом GET //дождаться ответа AT+HTTPTERM //остановить HTTP

В результате, при наличии соединения, получим ответ от сервера. То есть, фактически, мы уже умеем отправлять данные о координатах, если сервер принимает их по GET.

Питание
Поскольку питать GSM модуль от преобразователя Arduino, как я выяснил, плохая идея, было решено купить преобразователь 12v->5v, 3A, на том же ebay. Однако, модулю не нравится питание в 5V. Идем на хак: подключаем 5V в пин, с которого приходит 5V от ардуины. Тогда встроенный преобразователь модуля (существенно мощнее преобразователя ардуины, MIC 29302WU) сделает из 5V то, что нужно модулю.

Сервер

Сервер написал примитивный - хранение координат и рисование на Яндекс.картах. В дальнейшем возможно добавление разных фич, включая поддержку многих пользователей, статус «на охране/не на охране», состояние систем автомобиля (зажигание, фары и пр.), возможно даже управление системами автомобиля. Конечно, с соответствующей поддержкой трекера, плавно превращающегося в полновесную сигнализацию.

Полевые испытания

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

После установки преобразователя питания и укладывания в корпус от дохлого DSL модема система выглядит так:

Припаивал провода, вынул несколько контактов из колодок ардуины. Выглядят так:

Подключил 12V в машине, проехался по Москве, получил трек:


Точки трека достаточно далеко друг от друга. Причина в том, что отправка данных по GPRS занимает относительно много времени, и в это время координаты не считываются. Это явная ошибка программирования. Лечится во-первых, отправкой сразу пачки координат со временем, во-вторых, асинхронной работой с GPRS модулем.

Время поиска спутников на пассажирском сидении автомобиля - пара минут.

Выводы

Создание GPS трекера на ардуино своими руками возможно, хотя и не является тривиальной задачей. Главный вопрос сейчас - как спрятать устройство в машине так, чтобы оно не подвергалось воздействиям вредных факторов (вода, температура), не было закрыто металлом (GPS и GPRS будут экранироваться) и не было особенно заметно. Пока просто лежит в салоне и подключается к гнезду прикуривателя.

Ну и ещё нужно поправить код для более плавного трека, хотя основную задачу трекер и так выполняет.

Использованные устройства

  • Arduino Mega 2560
  • Arduino Uno
  • GPS SkyLab SKM53
  • SIM900 based GSM/GPRS Shield
  • DC-DC 12v->5v 3A converter

После нескольких экспериментов с ардуиной решил сделать простенький и не очень дорогой GPS-tracker с отправкой координат по GPRS на сервер.
Используется Arduino Mega 2560 (Arduino Uno), SIM900 - GSM/GPRS модуль (для отправки информации на сервер), GPS приёмник SKM53 GPS.

Всё закуплено на ebay.com, в сумме около 1500 р (примерно 500р ардуина, немного меньше - GSM модуль, немного больше - GPS).

GPS приемник

Для начала нужно разобраться с работой с GPS. Выбранный модуль - один из самых дешевых и простых. Тем не менее, производитель обещает наличие батарейки для сохранения данных о спутниках. По даташиту, холодный старт должен занимать 36 секунд, однако, в моих условиях (10 этаж с подоконника, вплотную зданий нет) это заняло аж 20 минут. Следующий старт, однако, уже 2 минуты.

Важный параметр устройств, подключаемых к ардуине - энергопотребление. Если перегрузить преобразователь ардуины, она может сгореть. Для используемого приемника максимальное энергопотребление - 45mA @ 3.3v. Зачем в спецификации указывать силу тока на напряжении, отличном от требуемого (5V), для меня загадка. Тем не менее, 45 mA преобразователь ардуины выдержит.

Подключение
GPS не управляемый, хотя и имеет RX пин. Для чего - неизвестно. Основное, что можно делать с этим приемником - читать данные по протоколу NMEA с TX пина. Уровни - 5V, как раз для ардуины, скорость - 9600 бод. Подключаю VIN в VCC ардуины, GND в GND, TX в RX соответствующего serial. Читаю данные сначала вручную, затем с использованием библиотеки TinyGPS. На удивление, всё читается. После перехода на Uno пришлось использовать SoftwareSerial, и тут начались проблемы - теряется часть символов сообщения. Это не очень критично, так как TinyGPS отсекает невалидные сообщения, но довольно неприятно: о частоте в 1Гц можно забыть.

Небольшое замечание относительно SoftwareSerial: на Uno нет хардверных портов (кроме соединённого с USB Serial), поэтому приходится использовать программный. Так вот, он может принимать данные только на пине, на котором плата поддерживает прерывания. В случае Uno это 2 и 3. Мало того, данные одновременно может получать только один такой порт.

Вот так выглядит «тестовый стенд».

GSM приемник/передатчик


Теперь начинается более интересная часть. GSM модуль - SIM900. Он поддерживает GSM и GPRS. Ни EDGE, ни уж тем более 3G, не поддерживаются. Для передачи данных о координатах это, вероятно, хорошо - не будет задержек и проблем при переключении между режимами, плюс GPRS сейчас есть почти везде. Однако, для каких-то более сложных приложений этого уже может не хватить.

Подключение
Модуль управляется также по последовательному порту, с тем же уровнем - 5V. И здесь нам уже понадобятся и RX, и TX. Модуль - shield, то есть, он устанавливается на ардуину. Причем совместим как с mega, так и с uno. Скорость по умолчанию - 115200.

Собираем на Mega, и тут нас ждет первый неприятный сюрприз: TX пин модуля попадает на 7й пин меги. На 7м пину меги недоступны прерывания, а значит, придется соединить 7й пин, скажем, с 6м, на котором прерывания возможны. Таким образом, потратим один пин ардуины впустую. Ну, для меги это не очень страшно - всё-таки пинов хватает. А вот для Uno это уже сложнее (напоминаю, там всего 2 пина, поддерживающих прерывания - 2 и 3). В качестве решения этой проблемы можно предложить не устанавливать модуль на ардуину, а соединить его проводами. Тогда можно использовать Serial1.

После подключения пытаемся «поговорить» с модулем (не забываем его включить). Выбираем скорость порта - 115200, при этом хорошо, если все встроенные последовательные порты (4 на меге, 1 на uno) и все программные работают на одной скорости. Так можно добиться более устойчивой передачи данных. Почему - не знаю, хотя и догадываюсь.

Итак, пишем примитивный код для проброса данных между последовательными портами, отправляем atz, в ответ тишина. Что такое? А, case sensitive. ATZ, получаем OK. Ура, модуль нас слышит. А не позвонить ли нам ради интереса? ATD +7499… Звонит городской телефон, из ардуины идет дымок, ноутбук вырубается. Сгорел преобразователь Arduino. Было плохой идеей кормить его 19 вольтами, хотя и написано, что он может работать от 6 до 20V, рекомендуют 7-12V. В даташите на GSM модуль нигде не сказано о потребляемой мощности под нагрузкой. Ну что ж, Mega отправляется в склад запчастей. С замиранием сердца включаю ноутбук, получивший +19V по +5V линии от USB. Работает, и даже USB не выгорели. Спасибо Lenovo за защиту.

После выгорания преобразователя я поискал потребляемый ток. Так вот, пиковый - 2А, типичный - 0.5А. Такое явно не под силу преобразователю ардуины. Нужно отдельное питание.

Программирование
Модуль предоставляет широкие возможности передачи данных. Начиная от голосовых вызовов и SMS и заканчивая, собственно, GPRS. Причем для последнего есть возможность выполнить HTTP запрос при помощи AT команд. Придется отправить несколько, но это того стоит: формировать запрос вручную не очень-то хочется. Есть пара нюансов с открытием канала передачи данных по GPRS - помните классические AT+CGDCONT=1,«IP»,«apn»? Так вот, тут то же самое нужно, но слегка хитрее.

Для получения страницы по определенному URL нужно послать следующие команды:
AT+SAPBR=1,1 //Открыть несущую (Carrier) AT+SAPBR=3,1,"CONTYPE","GPRS" //тип подключения - GPRS AT+SAPBR=3,1,"APN","internet" //APN, для Мегафона - internet AT+HTTPINIT //Инициализировать HTTP AT+HTTPPARA="CID",1 //Carrier ID для использования. AT+HTTPPARA="URL","http://www.example.com/GpsTracking/record.php?Lat=%ld&Lng=%ld" //Собственно URL, после sprintf с координатами AT+HTTPACTION=0 //Запросить данные методом GET //дождаться ответа AT+HTTPTERM //остановить HTTP

В результате, при наличии соединения, получим ответ от сервера. То есть, фактически, мы уже умеем отправлять данные о координатах, если сервер принимает их по GET.

Питание
Поскольку питать GSM модуль от преобразователя Arduino, как я выяснил, плохая идея, было решено купить преобразователь 12v->5v, 3A, на том же ebay. Однако, модулю не нравится питание в 5V. Идем на хак: подключаем 5V в пин, с которого приходит 5V от ардуины. Тогда встроенный преобразователь модуля (существенно мощнее преобразователя ардуины, MIC 29302WU) сделает из 5V то, что нужно модулю.

Сервер

Сервер написал примитивный - хранение координат и рисование на Яндекс.картах. В дальнейшем возможно добавление разных фич, включая поддержку многих пользователей, статус «на охране/не на охране», состояние систем автомобиля (зажигание, фары и пр.), возможно даже управление системами автомобиля. Конечно, с соответствующей поддержкой трекера, плавно превращающегося в полновесную сигнализацию.

Полевые испытания

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

После установки преобразователя питания и укладывания в корпус от дохлого DSL модема система выглядит так:

Припаивал провода, вынул несколько контактов из колодок ардуины. Выглядят так:

Подключил 12V в машине, проехался по Москве, получил трек:


Точки трека достаточно далеко друг от друга. Причина в том, что отправка данных по GPRS занимает относительно много времени, и в это время координаты не считываются. Это явная ошибка программирования. Лечится во-первых, отправкой сразу пачки координат со временем, во-вторых, асинхронной работой с GPRS модулем.

Время поиска спутников на пассажирском сидении автомобиля - пара минут.

Выводы

Создание GPS трекера на ардуино своими руками возможно, хотя и не является тривиальной задачей. Главный вопрос сейчас - как спрятать устройство в машине так, чтобы оно не подвергалось воздействиям вредных факторов (вода, температура), не было закрыто металлом (GPS и GPRS будут экранироваться) и не было особенно заметно. Пока просто лежит в салоне и подключается к гнезду прикуривателя.

Ну и ещё нужно поправить код для более плавного трека, хотя основную задачу трекер и так выполняет.

Использованные устройства

  • Arduino Mega 2560
  • Arduino Uno
  • GPS SkyLab SKM53
  • SIM900 based GSM/GPRS Shield
  • DC-DC 12v->5v 3A converter

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

Разработка

Мы из тех, кто делает все и сами. Пусть долго, пусть дорого, но в таких случаях все недочеты убираем до момента выпуска, да и винить в случае неудачи никого не нужно. Основные задачи, которые стояли при разработке нового устройства – надежность, наличие акселерометра, работа с любыми устройствами по rs-232, а также, удобство и простота инсталляции для конечного пользователя (купил – поставил – пользуешься). Никаких автоэлектриков и прочих установщиков.

GSM

Из-за перебоев с поставкой Telita в Украину, выбор был сделан в пользу модуля компании Quectel M12. Модуль довольно известный и пришел на смену модулю М10. Он имеет такой же форм фактор как и Телит (SMT), удобен в диагностике неисправностей, т.к. все его выхода выведены по бокам (никакого BGA). В большинстве своем, модуль имеет абсолютно такие же (или очень близкие) характеристики к Телиту. Тут стоит отметить, что на рынке Украины практически все модули имеют одинаковые функциональные возможности с основными различиями только в среде разработке, и тут уже каждый выбирает, что он лучше знает и в чем удобней «писать». Хочется отметить про фишку М12 в виде OpenCPU , который весьма сокращает весь процесс разработки готового девайса, и крайне удобен в освоении.

GPS

Ну, тут вообще интересная история. Изначально все разрабатывалось под чип, который использовали Uranus 625r. Но в момент заказа китайцы заявили, что этот чип снят с производства, и они на все 100% уверены, что новый чип (их же производства) нас удовлетворит чуть менее чем полностью. В процессе переговоров были согласованы pin-to-pin совместимость (а это rx,tx,reset (тут особое внимание, об этом будет написано ниже), земля), этот момент был несколько раз поднят в переписке и устных переговорах. Крайне обрадовало наличие нового Sirf IV и поддержки загрузки эфемерид для работы режима a-gps. Забегая вперед, могу сказать, что если убрать довольно большое количество брака (около 10%, который слава Богу, можно отсеить на этапе сборке устройств) качество самого приемника вполне отличное.

Сборка номер ноль

Т.к. травить плату под такое устройство не очень удобно, было принято решение использовать макетную плату для первоначальной ревизии

Вот такая вот «идеальная» трассировка:

Небольшой конфуз при разработке:

Ну и основные работники крупным планом:

После отладки всех основных моментов перешли к человеческой разводке и подготовке к производству. Результат ниже (обе стороны для сравнения):

После согласования всех спецификаций плата была отдана в производство и 8 недель для изготовления первой партии были потрачены на поиск\закупку всех запчастей. Примерно через два месяца было получено первые 10 устройств:

Как обычно

После получения первых образцов, обычно, начинается самое интересное – это когда все вроде и правильно, и вроде бы тестировалось долго, а ничего не работает. Или работает, но не так. Просто не работает и уже вроде ничего и нельзя изменить.
Так и случилось. Пришедшие «волшебные» GPS модули просто «молчали». Ставим старые – все работает, прозваниваем новые – должно работать, но «лыжи не едут». Виной тому – использование reseta при первом старте, когда модуль обращается в первый раз к стеку. Китайцы с присущим им удивлением сказали, что «нужно было предупредить» и выслали мануал как вернуть все на место. После поднятия всей переписки и отсылки им, просто пообещали, что такое больше не повториться. Занавес.

ТТХ готового устройства

- старт за 2 секунды, AGPS
- sirf IV (возможность замены на glonass для РФ вариантов)
- память на 250000 точек
- адаптивный режим
- датчик удара\вибрации (акселерометр)
- режим маяка
- удаленный контроль и управление тарифными планами посредством прямых USSD команд
- работа без сервера посредством СМС
- и еще много,

Бонусы

Розничная стоимость устройства на данный момент составляет 180 у.е. Дилерские цены при определенных объемах падают до 110 у.е. На нашем сервисе абонентская плата до конца 2013 года полностью отсутствует при подключении любого количества устройств.
Как обычно, гарантия на 512 месяцев со дня покупки устройства (на АКБ не распространяется).

Что такое Track IR?

Одна из систем отслеживания движений головы, вышедших на массовый рынок.
Это устройство ввода, разрабатываемое компанией NaturalPoint, обеспечивает псевдо-виртуальную реальность на персональном компьютере. Оно может следить за движениями головы пользователя по координатам X, Y и Z. Полученные данные используются в программах (играх) для преобразования реальных поворотов головы в виртуальные. Например, в авиасимуляторе, игрок может осматривать кабину. Чувствительность настраивается, чтоб предотвратить такие повороты, когда пользователь не может нормально смотреть на экран."

К слову:
Track (от англ.) - отслеживать
IR - (аббрев. Infra red) - инфракарасный
Всё потому что данные для обработки полступают на компьютер через веб - камеру от инфракрасных излучателей (обычных инфрокрасных светодиодов). Далее.

Что нам потребуется?

Для того чтобы соорудить подобную штуковину необходимо:

  • Уметь пользоваться паяльником
  • 3 инфракрасных светодиода 3V (l-34sf4c)
  • Батарейка (таблетка) на 3V
  • Резистор на 51Ом
  • Отрезок провода
  • Кнопочка с фиксацией (pb22e08)
  • Подходящая Веб-Камера
  • Программа free-track
  • Фантазия
Далее о каждом пункте поподробнее:

Уметь пользоваться паяльником

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

Паяльник и прочие принадлежности

- собственно особо мощный паяльник не нужен, 30W хватит, олово и канифоль для того чтобы места пайки были крепкими.

3 инфракрасных светодиода 3V

- продаются в магазинах радиодеталей
Добавлено: В принципе хватает и одного светодиода расположенного в центре козырька кепки, в таком случае программа будет передавать данные о перемещении всего одной точки, словно курсор мышки. В данном случае будут учитываться только X и Y координаты, т.е. наклонить голову, как и приблизить в данном случае невозможно, на мой взгляд это и не нужно, но мы попытаемся сделать, как можно более реалистичную модель.

Батарейка (таблетка) на 3V

- продается всё в тех же магазинах радиодеталей, можно купить, как отдельно саму батарейку, так и в корпусе с двумя лапками "плюс" и "минус" для удобной пайки. К корпусу самой батарейки не рекомендуется ничего припаивать - может вздуться и взорваться.

Резистор на 50Ом

-Чтобы правильно подключить светодиод даже в самом простом случае, необходимо (читай желательно) подключить его через токоограничивающий резистор.

Отрезок провода

-я использовал отрезок витой пары UTP 5e (2 жилы разного цвета из кабеля от интернета), не толстый и не тонкий, в самый раз

Кнопочка с фиксацией

- тут, как говорится на вкус и цвет фломастеры разные, можно и без кнопочки, но таким образом батарейки на долго не хватит

Подходящая Веб-Камера

- Веб-камеру которую не жалко поковырять, потому что прийдется у неё извлекать инфрокрасный светофильтр. По в низу страницы приведен перечень совместимых камер, проще, у которых светофильтр отковыривается легко и есть возможность отключить автовыдержку, ибо она влияет на FPS камеры, что в свою очередь влияет на плавность движения головой (необходимо 30 FPS)

Про веб - камеру

Самое главное чтобы была возможность извлечь из веб - камеры инфракрасный светофильтр и отключить автовыдержку, чтобы увеличить FPS - всё.
Перечень совместимых камер можно прочитьать на сайте разработчика программы free-track -
Я использовал a4tech pk336e
Чтобы извлечь светофильтр необходимо разобрать корпус и выкрутить шахту с линзой, у основания шахты перед линзой вклеено небольшое стеклышко - это и есть светофильтр, поковырявшись ножичком пришлось его разбить и вычистить осколки, но аккуратно чтобы не повредить под ним линзу. После чего всё необходимо собрать обратно. Забегая вперед скажу, чтобы всё работало - веб- камера должна воспринимать лишь три белые точки от светодиодов и ничего лишнего, для этого её необходимо дополнительно затемнить небольшим кусочком магнитной поверхности от старой дискеты, или пленкой от видео кассеты VHS.
с картинками, фирма таже, но модель камеры другая.
Теперь у нас есть веб - камера, которая будет улавливать инфракрасное свечение, и вы можете на ней проверить работает ли ваша конструкция.
В итоге на изображении должны появится три харрактерные белые точки, читай датчики перемещения, котрые будут передавать информацию программе фритрек для обработки. Но об этом в следующем разделе.
Добавлю что роботоспособность у камеры сохраняется при извлеченном светофильтре.

Разбираем веб-камеру A4Tech PK336E

Настройка FreeTrack


Первым делом установить модель расположения.

3 - заходим в раздел CAM
4 - Выбираем камеру из списка
5 - Нажимаем на старт
Ну и на черном экране должны появится три белых точки, при движении которых должна вращаться соответственно 3d модель слева.



Загрузка...