Ставим мегагаджет в оку. Часть 1: Творим навигатор.
Все началось буквально месяц назад, когда я получил права. Т.к. я занимался ремонтом ноутбуков, дома скопилось их n-ое количество и решил, не пропадать же добру: будем делать CarPC для 13ой оки.
В планах:
1) навигация
2) видеорегистрация с записью на внешний секретный черный ящик
3) запись треков
4) Ну и одометр, спидометр, тахометр с датчиков двигателя, которые еще поставить надо.
Спрашивали:
Отвечаем:
just for fun and lulz:)
Часть 1: делаем из ноутбука и андроидфона навигатор.
Так как я ниразу не программист, будем действовать подручными средствами и все что гугль найдет.
Для начала делаем подготовку андроидфона, он у нас служит источником данных GPS. Для этого нужна любая программа, которая умеет создавать NMEA TCP Server, в моем случае мне попалась TurboGPS 2
Создаем NMEA сервер двумя тычками пальцев:
После создания, подключаем зверька к большому брату используя точку доступа wi-fi или режим модема андроида.
Следущим этапом будет установить навигационную программу, на этапе тестирования возьмем SasPlaneta. На текущий момент найти программу, которая прокладывает маршруты мне не удалось, однако я езжу по дальнему замкадью и качество карт НЕ в областном центре отвратительное, гораздо легче ориентироваться по спутниковым снимкам.
И сразу упс:
Мы, как и 95% программ, не понимаем NMEA сервер, а те 5% программ, которые понимают, я не нашел и не знаю, существуют ли они...
Если чего-то нет, то это необходимо создать. В помощь нам идут две программки com0com и com2tcp, оба проекта живут тут. Первая создает виртуальный Com-порт, а вторая перекидывает данные сервера в этот com.
Ставим com0com и запускаем процесс установки портов.
После этого у нас появился новый порт и встали новые драйвера.
Com2tcp установки не требует и запускается из командной строки: com2tcp --telnet \\.\CNCB0 192.168.42.129 7777
Где: CNCB0 берется из программы com0com как принимающая сторона, циферка в вашем случае может отличаться.
192.168.42.129 адрес андроида, берется из свойст сетевых соединений, он там как шлюз прописан
ну и 7777 это порт, заданный в TurboGPS 2
После этого в SasPlaneta ставим свежесозданный порт приемника и включаем его в работу.
В командной строке появится:
Microsoft Windows [Версия 6.0.6002]
(C) Корпорация Майкрософт, 2006. Все права защищены.
c:\Program Files\com0com\com2tcp-1.3.0.0-386>com2tcp --telnet \\.\CNCB0 192.168.
42.129 7777
OpenC0C("\\.\CNCB0", baud=19200, data=8, parity=no, stop=1) - OK
DSR is ON
WaitComReady() - OK
Connect("192.168.42.129", "7777") - OK
InOut() START
DSR is ON
и все, смотрим и радуемся:)
К сожалению я счас нахожусь на работе в здании и не могу в полной мере предоставить результат работы программы из-за отсутствия GPS спутников.
На сим все, надеюсь вам понравилось и буду писать дальше свои злоключения:)
В планах:
1) навигация
2) видеорегистрация с записью на внешний секретный черный ящик
3) запись треков
4) Ну и одометр, спидометр, тахометр с датчиков двигателя, которые еще поставить надо.
Спрашивали:
Отвечаем:
just for fun and lulz:)
Часть 1: делаем из ноутбука и андроидфона навигатор.
Так как я ниразу не программист, будем действовать подручными средствами и все что гугль найдет.
Для начала делаем подготовку андроидфона, он у нас служит источником данных GPS. Для этого нужна любая программа, которая умеет создавать NMEA TCP Server, в моем случае мне попалась TurboGPS 2
Создаем NMEA сервер двумя тычками пальцев:
После создания, подключаем зверька к большому брату используя точку доступа wi-fi или режим модема андроида.
Следущим этапом будет установить навигационную программу, на этапе тестирования возьмем SasPlaneta. На текущий момент найти программу, которая прокладывает маршруты мне не удалось, однако я езжу по дальнему замкадью и качество карт НЕ в областном центре отвратительное, гораздо легче ориентироваться по спутниковым снимкам.
И сразу упс:
Мы, как и 95% программ, не понимаем NMEA сервер, а те 5% программ, которые понимают, я не нашел и не знаю, существуют ли они...
Если чего-то нет, то это необходимо создать. В помощь нам идут две программки com0com и com2tcp, оба проекта живут тут. Первая создает виртуальный Com-порт, а вторая перекидывает данные сервера в этот com.
Ставим com0com и запускаем процесс установки портов.
После этого у нас появился новый порт и встали новые драйвера.
Com2tcp установки не требует и запускается из командной строки: com2tcp --telnet \\.\CNCB0 192.168.42.129 7777
Где: CNCB0 берется из программы com0com как принимающая сторона, циферка в вашем случае может отличаться.
192.168.42.129 адрес андроида, берется из свойст сетевых соединений, он там как шлюз прописан
ну и 7777 это порт, заданный в TurboGPS 2
После этого в SasPlaneta ставим свежесозданный порт приемника и включаем его в работу.
В командной строке появится:
Microsoft Windows [Версия 6.0.6002]
(C) Корпорация Майкрософт, 2006. Все права защищены.
c:\Program Files\com0com\com2tcp-1.3.0.0-386>com2tcp --telnet \\.\CNCB0 192.168.
42.129 7777
OpenC0C("\\.\CNCB0", baud=19200, data=8, parity=no, stop=1) - OK
DSR is ON
WaitComReady() - OK
Connect("192.168.42.129", "7777") - OK
InOut() START
DSR is ON
и все, смотрим и радуемся:)
К сожалению я счас нахожусь на работе в здании и не могу в полной мере предоставить результат работы программы из-за отсутствия GPS спутников.
На сим все, надеюсь вам понравилось и буду писать дальше свои злоключения:)
Личный опыт:
Разное
это первоисточник, а то на хабре проскакивало с какими-то самописными программами
А как с остальным дела? Монтаж, местонах монитора, начинки, проблемы охлаждения итд. И какие датчики под снятие параметров дрыгателя?
Про дрыгатель, готов прототип, который показывает температуру, обороты, но пока по отдельности, как сведу их в одну программу, обязательно напишу.
Комп - обыкновенный нетбук, даже не помню какой и поставил:) Насчет охлаждения пока штатное ибо была зима и осень, не очень жарко было.
Датчик температуры простой: http://www.cqham.ru/usbtherm1.html
Датчик оборотов на базе частотометра тоже собран. Со спидометром пока не извращался.
Как крепится, объяснить не смогу, лучше сфоткать, но это позже.
http://www.drive2.ru/cars/chevrolet/aveo/aveo_1st_generation/vitalyu/journal/288230376152157607/
Но здесь, скорее, профессиональная деформация - меня так бесят подобные колхозы на работе, что я везде стараюсь придумать максимально элегантное решение, даже если это повлечёт за собой небольшое увеличение цены =)
В настоящее время у меня готов тахометр и термометр(уже заведены в комп, но на соплях), насчет спидометра я еще думаю, как его корректно реализовать, ну и думу думать на датчики уровня и расхода топлива. Получится ли? не знаю если честно:)