Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Quectel M12+L10 OpenCPU shareware GPS project
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
GeGeL
Для демонстрации возможностей Quectel OpenCPU представляю для теста GPS-навигационное решение (трекер) на базе M12 и L10
HW, FW и SW на стадии тестирования, тем более все делал сам, так что само собой баги будут устраняться по ходу...

Функции:

- GPS-трекер+логер без веб-сервиса (слушающий сервер работает с API OziExplorer и локальными растровыми картами Ozi в режиме мультитрекинга (254 машины) или с любой другой навигациооной программой эмуляцией NMEA в COM-порт);

- максимально сжатый UDP протокол (8-10 байт на точку);
- динамический интервал отправки (точки фоновые + по заданному перемещению + заданному изменению вектора движения);

- переключение в режим GSM-локации при потере GPS (по тестам обеспечивает точность около 500м);

- внутренний точный счетчик пути в трекере с возможностью удаленного считывания и сброса;

- флеш-архив 20000 точек с возможностью удаленного считывания, анализ и эмуляция архивов;

- опционно СМС-трекинг, запрос СМС с инфо, автоподнятие, автослип, различные режимы энергосбережения, тревожный звонок, контроль внешнего входа и линии АЦП, управление внешним выходом и т.д. - стандартный набор функций.

- гибкий алго работы с защитными таймаутами и аварийными перезапусками;

- внешний HW-watchdog (хотя ни разу не видел зависшего модуля - они идут на reset.


Все реализовано внутри М12 без микроконтроллера, подтянута float-математика.

Основные проблемы - с антеннами:
- для L10 проблема перегрузки входных цепей сильными зенитарными спутниками при активной антенне;
- для M12 плохие цепи согласования внутри самого модуля, что требует продуманного согласования с конкретной антенной в рабочих диаппазонах. Кстати, именно из-за этого теряется сеть, ресетится модуль и возникают пики потребления тока.


По ссылке: http://depositfiles.com/files/ujbe6y6a5

- бинарные файлы трекера для М10 и М10;
- бинарные файлы ядра М10 и М12;
- заливочная утилита;
- принципиальная схема (плату пока сам не разводил);
- слушающий сервер (Win32);
- инсталлятор OziExplorer (Win32);
- Утилита для конфигурации, управления и работы с архивами (Win32);
- пакет документации;

Vladimir_J
Цитата(GeGeL @ Sep 28 2011, 09:53) *
Для демонстрации возможностей Quectel OpenCPU представляю для теста GPS-навигационное решение (трекер) на базе M12 и L10
HW, FW и SW на стадии тестирования, тем более все делал сам, так что само собой баги будут устраняться по ходу...

Функции:

- GPS-трекер+логер без веб-сервиса (слушающий сервер работает с API OziExplorer и локальными растровыми картами Ozi в режиме мультитрекинга (254 машины) или с любой другой навигациооной программой эмуляцией NMEA в COM-порт);

- максимально сжатый UDP протокол (8-10 байт на точку);
- динамический интервал отправки (точки фоновые + по заданному перемещению + заданному изменению вектора движения);

- переключение в режим GSM-локации при потере GPS (по тестам обеспечивает точность около 500м);

- внутренний точный счетчик пути в трекере с возможностью удаленного считывания и сброса;

- флеш-архив 20000 точек с возможностью удаленного считывания, анализ и эмуляция архивов;

- опционно СМС-трекинг, запрос СМС с инфо, автоподнятие, автослип, различные режимы энергосбережения, тревожный звонок, контроль внешнего входа и линии АЦП, управление внешним выходом и т.д. - стандартный набор функций.

- гибкий алго работы с защитными таймаутами и аварийными перезапусками;

- внешний HW-watchdog (хотя ни разу не видел зависшего модуля - они идут на reset.


Все реализовано внутри М12 без микроконтроллера, подтянута float-математика.

Основные проблемы - с антеннами:
- для L10 проблема перегрузки входных цепей сильными зенитарными спутниками при активной антенне;
- для M12 плохие цепи согласования внутри самого модуля, что требует продуманного согласования с конкретной антенной в рабочих диаппазонах. Кстати, именно из-за этого теряется сеть, ресетится модуль и возникают пики потребления тока.


По ссылке: http://depositfiles.com/files/ujbe6y6a5

- бинарные файлы трекера для М10 и М10;
- бинарные файлы ядра М10 и М12;
- заливочная утилита;
- принципиальная схема (плату пока сам не разводил);
- слушающий сервер (Win32);
- инсталлятор OziExplorer (Win32);
- Утилита для конфигурации, управления и работы с архивами (Win32);
- пакет документации;


Респект.
Хорошая работа sm.gif
Aleksandr_q
Цитата(Vladimir_J @ Sep 28 2011, 10:01) *
Респект.
Хорошая работа sm.gif


Поддерживаю.

P.S. Сергей один из первых кто на высоком уровне разобрался с технологией OpenCPU. А теперь еще и представал действительно хороший продукт.

Сергей скажи а GSM Location тут удалось внедрить?

С ув. Александр, Рейнбоу
kan35
GeGeL, интересную работу вы представили. Как я понимаю основная цель - изучение возможностей OpenCPU, но нужно знаний и технических возможностей (ведь нужен внешний IP?) чтобы еще и свой сервер сделать. Почему бы просто не подстроиться под чей-то готовый протокол, например открытым Wialon IPS и воспользоваться их orange trace сервисом? для старта мне кажется это было бы проще всем.
GeGeL
Да, GSM-локация в даном трекере имеется, если флажок "Использовать GSM-локацию" установлен при конфигурировании. Она используется автоматически в случае отсутствия валидных GPS RMC-пакетов за время от последней отправки данных. Т.о., при истечении фонового интервала отправки будет запущен механизм жсм-локации и при получении координат на сервер отправляются данные с установленным флагом. Объект на карте позиционируется, но отображается красным шрифтом. Точки, полученные GSM-локацией так же архивируются в флеш, но не участвуют в подсчете пройденного расстояния.

Тестировал в условиях города (в Украине) - от 50 до 500 м погрешности, в сельских условиях (видится 2 соты) всегда около 500 м. Данные на локационный сервер модуль отправляет бекграундовой GPRS, APN для которой задается заранее. Не могу только понять, используется расстояние только к рабочей соте, или же идет переключение и оценивается расстояния ко всем доступным сотам.

Конечно, можно прикрутить любой протокол, тем более, что у меня имеются описания стандартных. Но хотелось:
1. уйти от внешнего сервера в плане абонплаты, сделав автономную систему
2. обеспечить максимальную Security (все же внешний сервер тут - уязвимость...)
3. сделать свой максимально сжатый протокол для економии трафика
4. и самое главное - использовать свои карты. Это особенно важно для сельских районов, не прорисованых в гуглмеп, например. А в Ози не составит труда подтянуть любую генштабовскую или привязать скан любой бумажной. Тем более карты растровые - можно самому рисовать на них все, что надо.

В Украине Укртелеком и много домашних кабельных сетей предоставляют реальные (хотя и динамические) IP безплатно, так что тут проблемы небольшие...

Если кому-то понадобится прикрутить конкретный протокол - без проблем сделаю максимально оперативно.
А вобще я наверно арендую походящий хост и сделаю на нем узел с редиректом, надо подумать. Я не особо опытен в php, но попробую.
И еще: уже готов сервер, использующий гугл- и яндекс-карты для отображения "своих" авто по индивидуальной ссылке (по типу "Пилигрима", с вариантом для мобильных браузеров), друг написал за 2 вечера sm.gif Как оттестим, дам ссылку, пока в бесплатном режиме будет.
kia59
GeGeL, спасибо за представленную работу, Вы сами во многом разобрались и нам помогаете, Но:
довольно сильно режет глаза схемотехника и как следствие ПО под нее.
1. В реальных условиях (в автомобиле) устройство не работоспособно, см. ГОСТ 28751-90
2. Зачем ресетить если мол что. то полным отключением питания.
Например сбой обмена приемник-модем. Программно отрубаем модем от порта, ресетим приемник подачей
положительного, импульса через инвертор с открытым коллектором с любого I/O, подключаемся к порту.
и.т.д. (там в схеме еще есть нечто такое...), зачем под такое раводить плату????

P.S. Автор называет это трекером (254 машины), но де-факто это не тянет на индивидуальный трекер в ранце у школьника, очень сырое, это тянет пока на разрубленный и разнесенный в пространстве GPS навигатор.
В настоящее время от этих 254 машин кроме трека нужно иметь возможность получать информацию о расходе
бензина в баке, например, динамику изменения температуры в рефрижераторе, открытие - закрытие дверей фуры,
и т.д.
Об этом даже в решении нет намека
V125
Цитата(kia59 @ Nov 29 2011, 00:15) *
В настоящее время от этих 254 машин кроме трека нужно иметь возможность получать информацию о ........... открытие - закрытие дверей фуры, и т.д. Об этом даже в решении нет намека
Как нет намека? GeGeL ясно написал "управление внешним выходом"
Цитата(GeGeL @ Sep 28 2011, 10:53) *
- опционно СМС-трекинг, запрос СМС с инфо, автоподнятие, автослип, различные режимы энергосбережения, тревожный звонок, контроль внешнего входа и линии АЦП, управление внешним выходом и т.д. - стандартный набор функций.
А всем известно, что двери фуры как раз и являются внешним выходом biggrin.gif , а заодно и вовнутренним входом. Да и АЦП можно прилепить к поплавку в баке. Вот ГОСТ про "кондуктивные помехи по цепям питания" -это конечно гениально, это аплодисменты. Почитал маленько. Вот только "стандарт не устанавливает методы испытаний для источников радиопомех по СТ СЭВ 784"
kia59
Цитата(V125 @ Nov 29 2011, 00:55) *
Как нет намека? GeGeL ясно написал "управление внешним выходом" А всем известно, что двери фуры как раз и являются внешним выходом biggrin.gif , а заодно и вовнутренним входом. Да и АЦП можно прилепить к поплавку в баке. Вот ГОСТ про "кондуктивные помехи по цепям питания" -это конечно гениально, это аплодисменты. Почитал маленько. Вот только "стандарт не устанавливает методы испытаний для источников радиопомех по СТ СЭВ 784"


Вы меня не поняли. Тогда вопрос: что можно тестировать? Ответ: как пишет сам автор - демонстрацию возможностей Quectel OpenCPU. А именно:

"Функции:

- GPS-трекер+логер без веб-сервиса (слушающий сервер работает с API OziExplorer и локальными растровыми картами Ozi в режиме мультитрекинга (254 машины) или с любой другой ........."

Все это можно протестировать используя L10EVB и M10_EVB_UGD_V1.01, соединив их тремя проводками, исключив из тестирования
"- гибкий алго работы с защитными таймаутами и аварийными перезапусками;
- внешний HW-watchdog (хотя ни разу не видел зависшего модуля - они идут на reset.", хотя я писал, что эти функции
можно реализовать красивее.
ВОТ И ВСЕ!

Опцион я не протестирую
"- опционно СМС-трекинг, запрос СМС с инфо, автоподнятие, автослип, различные режимы энергосбережения, тревожный звонок, контроль внешнего входа и линии АЦП, управление внешним выходом и т.д. - стандартный набор функций."
Межконтинентальная ракета тоже запускается с помощью стандартных наборов функций.

Неплохо было бы завершить схему на 2 аналоговых входа, четыре I/O, и заточить приложение под конкретное решение. Это будет решение с видом на законченное изделие.

По поводу "кондуктивные помехи по цепям питания" это не гениально, а очень печально. Я видел столько черных, в копоти трекеров в которых произошел БАХ!, когда по питанию приходит импульс 800 вольт/ 1 мсек.
Блок питания нужно дорабатывать
kovz
Цитата(kia59 @ Nov 29 2011, 10:44) *
Неплохо было бы завершить схему на 2 аналоговых входа, четыре I/O, и заточить приложение под конкретное решение. Это будет решение с видом на законченное изделие.


Так а вчём проблема? Это уже похоже на зачаток ТЗ, а там глядиш и до предложения о работе не далеко, особенно с затачиванием под конкретное решение wink.gif
pau62
Странно, у kia59 2 сообщения на форуме, и оба ради того, чтоб обкакать демо-проект, до которого ему вроде бы и дела нет, коли он такой умный.
А мож просто завидует?
V125
Цитата(kia59 @ Nov 29 2011, 12:44) *
Я видел столько черных, в копоти трекеров в которых произошел БАХ!, когда по питанию приходит импульс 800 вольт/ 1 мсек.
Надо бы их сфотографировать и выложить. Вот будет урок "неправильным разработчикам сырых трекеров" Все же поясните как ГОСТ 28751-90 вяжется с источником радиопомех? Этот Гост НЕПРИМЕНИМ к источникам радиопомех.
Цитата(kovz @ Nov 29 2011, 13:12) *
...особенно с затачиванием под конкретное решение wink.gif
Конкретно под а/м KIA
kia59
Цитата(pau62 @ Nov 29 2011, 13:29) *
Странно, у kia59 2 сообщения на форуме, и оба ради того, чтоб обкакать демо-проект, до которого ему вроде бы и дела нет, коли он такой умный.
А мож просто завидует?


Нет не завидую, ни в коем случае. Обязательно протестирую..

Цитата(V125 @ Nov 29 2011, 13:31) *
Надо бы их сфотографировать и выложить. Вот будет урок "неправильным разработчикам сырых трекеров" Все же поясните как ГОСТ 28751-90 вяжется с источником радиопомех? Этот Гост НЕПРИМЕНИМ к источникам радиопомех.
Конкретно под а/м KIA


Причем тут радиопомехи, их влияние аналогично влиянию лунного света на рост телеграфных столбов.

Насчет - Конкретно под а/м KIA
-этого гуталина я уже наелся
http://gpslog.com.ua/news/kst_3_novyj_gps_...r/2010-04-28-19
наши изделия


GeGeL, если у вас есть желание обсудить некоторые вопросы экономического плана,
пишите krian59@mail.ru

Цитата(kia59 @ Nov 29 2011, 14:40) *
Нет не завидую, ни в коем случае. Обязательно протестирую..



Причем тут радиопомехи, их влияние аналогично влиянию лунного света на рост телеграфных столбов.
Если конечно не поставить генератор помех в радиусе 50 метров
Насчет - Конкретно под а/м KIA
-этого гуталина я уже наелся
http://gpslog.com.ua/news/kst_3_novyj_gps_...r/2010-04-28-19
наши изделия


GeGeL, если у вас есть желание обсудить некоторые вопросы экономического плана,
пишите krian59@mail.ru

GeGeL
Цитата(kia59 @ Nov 28 2011, 23:15) *
GeGeL, спасибо за представленную работу, Вы сами во многом разобрались и нам помогаете, Но:
довольно сильно режет глаза схемотехника и как следствие ПО под нее.

Всегда пожалуйста sm.gif Только не совсем понял, кому - нам...
Я никогда не позиционировал себя как разработчика схемотехники. Я обычно концентрирую внимание на софте и дополняю тестовой схемой, позволяющей реализовать софт.функции. А схемотехнику под себя делает производитель, исходя из множества факторов.
так что над схемой, в частности БП, я думал не более 5 минут, и это - далеко не конечное решение.

Цитата(kia59 @ Nov 28 2011, 23:15) *
1. В реальных условиях (в автомобиле) устройство не работоспособно, см. ГОСТ 28751-90
2. Зачем ресетить если мол что. то полным отключением питания.
Например сбой обмена приемник-модем. Программно отрубаем модем от порта, ресетим приемник подачей
положительного, импульса через инвертор с открытым коллектором с любого I/O, подключаемся к порту.
и.т.д. (там в схеме еще есть нечто такое...), зачем под такое раводить плату????


1. Ну врядли так категорично - качество работы ведь не ГОСТом определяется, а условиями работы и требованиями к задаче.
2. Естественно, програмно все это предусмотрено - smart-попытки "мягкого" восстановления по полной (тут как раз я обеспечиваю качество алгоритма). А внешний ресет по питанию - это крайний случай, если зависнет процессор, и все останется без контроля.
Как Вы заметили, вотчдог реагирует на прекращение меандра, т.е. независимо в каком состоянии (0 или 1 или Z) завис модуль, все равно будет аппаратный перезапуск. Конечно, можно было ставить дополнительно PIC10 вместо логики, но затраты на его прошивку убедили использовать логику.

Цитата(kia59 @ Nov 28 2011, 23:15) *
Автор называет это трекером (254 машины), но де-факто это не тянет на индивидуальный трекер в ранце у школьника, очень сырое, это тянет пока на разрубленный и разнесенный в пространстве GPS навигатор.

Я и не выставлял решение как проект под ключ: написано все было вечерами на протяжении месяца. Естественно, сырое есть, но, учитывая мои подходы к разработке софта, необходимые правки делаются в течение вечера. В такие же сроки переписывается протокол под ЛЮБОЙ сервер (приемер тому - за пару часов добавил WialonIPS по рекомендации с форума, о котором раньше вобще не слышал). Думаю, это заинтересует серверодержателей в первую очередь.
А что касается функционала, то не думаю, что он уступает существующим, в т.ч. и Вашим разработкам: гибкие настройки, динамический интервал отправки, архив в флеше с доступом через жпрс, внутренний точный счетчик перемещения, детальный анализ архива в заданном диаппазоне даты-времени (входы-выходы в рабочую зону, перезапуски, потери жпс и жпрс,
екстремальные координаты, скрость, АЦП, стоянки, изменения входа), проигрывание архива. Плюс автоматическое переключение на жсм-локацию. Плюс все возможности анализа, предоставляемые Ozi (а это де факто лучшая паблик программа навигации). И какой веб-сервер предоставляет такие возможности?

Цитата(kia59 @ Nov 28 2011, 23:15) *
В настоящее время от этих 254 машин кроме трека нужно иметь возможность получать информацию о расходе
бензина в баке, например, динамику изменения температуры в рефрижераторе, открытие - закрытие дверей фуры,
и т.д.
Об этом даже в решении нет намека


sm.gif Намек есть, но Вы недочитали: передаются данные одного цифрового входа и одного АЦП, возможность управления одним выходом. Что касается приложения этих линий - то это под конкретные требования. И если кому-то понадобится (в том числе и Вам sm.gif ), то согласуем интерфейс, я за символические деньги реализую математику обработки данных, а Вы - нужную схемотехнику. То же касается любых заказных програмных решений, причем в кратчайшие (в сравнении со сложившейся среди профи практике разработки firmware) сроки.

Цитата(kia59 @ Nov 29 2011, 11:44) *
Все это можно протестировать используя L10EVB и M10_EVB_UGD_V1.01, соединив их тремя проводками,

Поймите же, я не разработчик схемотехники, а разработчик firmware sm.gif Его и тестировал.

PS: Просмотрел я Ваш сайт. И что там есть такого, чего нету в моей демке? Разве что диаграм в аналитике. А в трекерах - больше внешних линий (4) , 1wire, CAN, акселерометра и ф-ии GeoFence. Все Дописывается за пару дней sm.gif Остальное - все аналогично.
Но по секрету - сколько обошелся Вам этот проект? А мой - от скуки вечерами sm.gif ...
kia59
Цитата(GeGeL @ Nov 29 2011, 19:54) *
Всегда пожалуйста sm.gif Только не совсем понял, кому - нам...

Нам, - это читателям данного форума
ArtemKAD
Цитата
1wire, CAN, акселерометра и ф-ии GeoFence. Все Дописывается за пару дней

CAN не допишите "за пару дней". Там кроме вполне специфичной аппаратуры надо еще иметь базу данных по сообщениям которые бегают в CAN-шине конкретных моделей автомобилей. А это уже - работа на недели и месяцы причем не за столом, а буквой Зю под приборной панелью автомобиля.
GeGeL
Согласен, с CAN это я погорячился, конечно sm.gif Хотя, думаю, отловить при нужде можно, имея диагн.систему для данных авто. Но, честно, авто никогда не занимался...

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.