Распродажа

Электронные компоненты со склада по низким ценам, подробнее >>>

Журнал Компел

2010: 
1, 2, 3, 4, 5, 6, 7, 8, 9
2009: 
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
13, 14, 15, 16
2008: 
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
13, 14, 15, 16
2007: 
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
13, 14, 15, 16, 17, 18, 19, 20
2005: 
1, 2, 3

Новости электроники

Мне нравится

Комментарии

дима пишет в теме Параметры биполярных транзисторов серии КТ827:

люди куплю транзистар кт 827А 0688759652

тамара плохова пишет в теме Журнал Радио 9 номер 1971 год. :

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

Ивашка пишет в теме Параметры отечественных излучающих диодов ИК диапазона:

Светодиод - это диод который излучает свет. А если диод имеет ИК излучение, то это ИК диод, а не "ИК светодиод" и "Светодиод инфракрасный", как указано на сайте.

Владимир пишет в теме 2Т963А-2 (RUS) со склада в Москве. Транзистор биполярный отечественный:

Подскажите 2т963а-2 гарантийный срок

Владимир II пишет... пишет в теме Параметры биполярных транзисторов серии КТ372:

Спасибо!

Журнал "Новости Электроники", номер 19, 2007 год.

Программная реализация C-GPS Open AT-приложения

Всеволод Нестеров (КОМПЭЛ)
Итак, бортовой мобильный навигационный контроллер на базе беспроводного процессора Wavecom и C-GPS-чипсета eRide собран. Время запускать программные приложения, разработанные Wavecom на базе открытого программного комплекса Open AT.

 

В предыдущей статье были рассмотрены некоторые аппаратные аспекты интеграции C-GPS-плагина компании Wavecom в бортовое навигационное оборудование систем слежения за подвижными объектами. Теперь мы поговорим о программных средствах.

Как уже говорилось, компания Wavecom предоставляет отладочные комплекты для реализации C-GPS. Они состоят из дочерней платы C-GPS и набора разработчика для беспроводных процессоров Q2686/87 или WMP50/100/150.

Помимо аппаратных средств, для начала разработки приложения разработчику потребуется программный комплекс Open AT нужной версии, который бесплатно предоставляется компанией Wavecom. Его можно скачать с FTP-сайта компании КОМПЭЛ. Чтобы получить логин и пароль для скачивания, достаточно прислать запрос. Каждой версии внутренней операционной системы беспроводного процессора соответствует своя версия Open AT, но поддерживается и обратная совместимость со старыми версиями. Другими словами, приложения, скомпилированные в ранних версиях, будут прекрасно работать на новых операционных системах беспроводных процессоров, работающих с новыми Open AT. Приложения в Open AT пишутся на языке С. В состав Open AT входят: GCC-компилятор, среда разработки Eclipse, Java-машина для работы с Eclipse; набор Development Toolkit, в состав которого входят программы Terminal Emulator, Serial Link Manager и Target Monitoring Tool; документация; бинарные файлы с операционной системой, соответствующей этой Open AT; примеры программ, библиотеки с плагинами.

Во время установки Open AT необходимо убедиться, что выставлены галочки, соответствующие нужным плагинам (в нашем случае C-GPS).

После установки Open AT можно запустить программу Project Wizard, которая формирует проект: новый или на базе имеющихся примеров. Для загрузки примера C-GPS надо в правом окне подключить библиотеку C-GPS, а в левом - сам пример (рис. 1).

 

Программа Project Wizard

Рис. 1. Программа Project Wizard

Через некоторое время после того, как вы выберете в поле Associated IDE Eclipse и нажмете ОК, загрузится среда Eclipse с вашим проектом (рис. 2), после чего с ним можно начинать работать.

 

Среда разработки Eclipse

Рис. 2. Среда разработки Eclipse

Компания Wavecom предоставляет четыре приложения для работы c C-GPS: QueryApplication, IntervalUpdate, TCPInternetConnection и RTCTimeAiding.

Приложение QueryApplication использует дочернюю плату C-GPS и принимает GPS-данные от нее. Пользователь может послать конфигурационное SMS-сообщение на беспроводной процессор. Приложение определит координаты, время и скорость и вышлет эти данные пользователю через SMS-канал. У пользователя есть возможность установить пароль для получения этих данных. Также можно задать номер телефона для их отсылки. Приложение может выдавать координаты в формате протокола NMEA на порт UART.

Приложение TCPInternetConnection также использует дочернюю плату C-GPS и принимает GPS-данные от нее. Пользователь может послать конфигурационное SMS-сообщение на беспроводной процессор. Приложение может быть сконфигурировано таким образом, что начнет периодически отсылать координаты через установленный промежуток времени, используя TCP IP-сокет. Как и в предыдущем случае, есть возможность задать пароль. Приложение может выдавать координаты в формате протокола NMEA на порт UART.

Функции приложения IntervalUpdate те же, что и у приложений QueryApplication и TCPInternetConnection, но передавать координаты оно может двумя способами: или через SMS-канал, или через TCP IP-сокет. Координаты также выдаются в виде NMEA-сообщения на UART.

Приложение RTCTimeAiding похоже на QueryApplication, но оно способно получать данные с часов реального времени, которые есть в беспроводном процессоре, и передавать их дочерней плате C-GPS. Это сокращает время TTFF (Time To First Fix) с 40 секунд до 5...10 секунд при использовании внешней выносной GPS-антенны. Необходимым условием работы этого приложения является наличие источника питания для часов реального времени.

Приложение Open AT может быть скомпилировано в двух режимах: в режиме Target и в режиме RTE.

Режим Target - это режим построения конечного бинарного файла. При этом генерируется файл с расширением .dwl, который с помощью стандартной программы Hyperterminal можно «залить» в беспроводной процессор, используя протокол X-Modem. Процедура следующая: если в результате проверки, не запущено ли в данный момент Open AT-приложение командой AT+WOPEN, получен ответ 1, то приложение запущено и его надо остановить командой AT+WOPEN=0, если ответ 0, то приложение не запущено. Команда AT+WDWL начинает процесс «заливки» приложения: беспроводной процессор выдает значки §§§§§§, говорящие о том, что он готов к приему файла; после этого надо выбрать файл и отправить его в процессор, используя протокол X-modem. По окончании загрузки необходимо осуществить сброс командой AT+CFUN=1, а затем запустить приложение AT+WOPEN=1. С этого момента оно будет работать даже после перезапуска питания.

В режиме RTE приложение генерирует исполняемую программу, которая может быть запущена на компьютере. Эта программа эмулирует работу ядра беспроводного процессора, управляя процессором с помощью собственного протокола через последовательный порт (рис. 3).

 

Рис. 3. Режим работы RTE

В окне этой программы можно установить ряд параметров запуска, а также выставить галочки уровней трасс. С помощью этих уровней можно отладить программу, вставив в нужные места кода определенный макрос, например, вида TRACE (( 1, "Embedded: Hello World" ));. Сообщения этих макросов будут видны в окне специальной программы Target Monitoring Tool (TMT), которая идет в комплекте с Open AT. Например, приведенный макрос выводит в окне TMT сообщение "Embedded: Hello World" на первом уровне трасс. Чтобы настроить TMT, необходимо выставить нужные уровни трасс, нажать кнопку Auto Detect, чтобы TMT увидел беспроводной процессор, и инициализировать этот процессор, нажав Commands, Init Target. Вид окна TMT при этом показан на рисунке 4.

 

Вид окна программы TMT

Рис. 4. Вид окна программы TMT

Уровни трасс можно увидеть и при работе в режиме Target. В этом режиме беспроводной процессор выдает трассы на последовательный порт, и они могут быть просмотрены программой TMT. В этом случае процессор также надо инициализировать, нажав Commands, Init Target.

Некоторые замечания по работе с приложением C-GPS в режиме RTE:

#if defined (_REMOTETASKS_)

/*Define the product type only for RTE mode*/

/*ADL_IO_PRODUCT_TYPE_Q2686 or ADL_IO_PRODUCT_TYPE_Q2687*/

#define RTE_PRODUCT_TYPE ADL_IO_PRODUCT_TYPE_Q2686

#endif

Если используется процессор Q2687, то код:

#if defined (_REMOTETASKS_)

/* Define the product type only for RTE mode */

/* ADL_IO_PRODUCT_TYPE_Q2686 or ADL_IO_PRODUCT_TYPE_Q2687*/

#define RTE_PRODUCT_TYPE ADL_IO_PRODUCT_TYPE_Q2687

#endif

Есть еще одна программа, которую следует рассмотреть - Terminal Emulator (TE). С помощью этой терминальной программы можно во время отладки подавать АТ-команды, а также просматривать получаемые и передаваемые данные. Во время запуска программ TMT или TE, автоматически запускается еще одна полезная программа, Serial Link Manager (Selima), которая распределяет поток данных с процессора: трэйсы передаются в TMT, а AT-команды и данные - в TE.

Рассмотрим основные моменты программной реализации C-GPS. Структурная схема программной платформы C-GPS-решения представлена на рисунке 5.

 

Структурная схема программной платформы C-GPS

Рис. 5. Структурная схема программной платформы C-GPS

Данные GPS в программной платформе C-GPS передаются в виде структур. Все эти структуры описаны в документации:

Информационные GPS структуры:

В программной платформе C-GPS используются API-функции четырех основных типов:

Ядро должно запускаться и выполняться из пользовательского приложения.

Функции управления ядром:

Главная функция управления ядром

Главной функцией управления ядром является int erGpsCoreTask(unsigned char *buf, unsigned short length) - она передает данные с последовательного порта GPS в буфер.

Значения, возвращаемые этой функции, представлены в таблице 1.

Таблица 1. Значения, возвращаемые функцией erGpsCoreTask

Тип Возвращаемое значение Функция Скорость, Гц
ER_PVT_AVAIL erPvtStruct erGetPvt 1
ER_TIME_AVAIL erTimeStruct erGetTime 1
ER_SVSTAT_AVAIL erSvStatusStruct erGetSvStatus 1
ER_FIXSET_AVAIL erFixSetStruct erGetFixSet 1
ER_TCO_AVAIL unsigned int int erGetTcoFrequency erGetTemperature 1
ER_LCTIME_AVAIL erTimeStruct erGetTime 1
ER_NVDATA_AVAIL erNvDataStruct App-specific  
ER_TESTDATA_AVAIL erGpsMeasStruct erGetTestData 1
Состояние ядра в момент выполнения этой функции должно быть ER_GPS_STATE_ON. Возвращаемое значение - бит, который указывает, что новые данные доступны. Данные принимаются со скоростью около 800 байт в секунду. Ядро должно вызываться каждые 100 мс.

Функции обратных вызовов

Функции обратных вызовов обеспечивают интерфейс между «железом» и ядром. Не все из этих функций востребованы. Они должны вызываться перед erGpsStart.

Функция void erRegisterCallbacks(erCallbackStruct *cb) регистрирует функции обратных вызовов, необходимые приложению.

Функции инициализации ядра

Эти функции конфигурируют работу GPS-ядра и вызываются перед erGpsStart:

Функции получения навигационных данных и статусов

Эти функции базируются на возвращаемых параметрах функции erGpsCoreTask (кроме функций const char *erGetVersion(void) - получение версии GPS-ядра и erUtcStruct *erGetUtc(void) - получение спутниковых UTC-параметров).

 

Структурная схема управления GPS-ядром

Рис. 6. Структурная схема управления GPS-ядром

Параметр ER_PVT_AVAIL:

Параметр ER_TIME_AVAIL:

Параметр ER_SVSTAT_AVAIL:

Параметр ER_FIXSET_AVAIL:

Параметр ER_TCO_AVAIL:

Параметр ER_NVDATA_AVAIL:

Параметр ER_TESTDATA_AVAIL:

Минимально необходимый набор функций для работы с C-GPS:

Необходимо несколько раз вызвать функцию erGpsCoreTask для обработки входящих данных. Получение навигационных данных производится через функцию erGetPvt. Опционально можно сохранять данные в энергонезависимой памяти.

erGpsOff, erGpsStandby.

Рассмотренные библиотеки функций eRide в полном объеме позволят добавить GPS-функциональность беспроводному процессору на базе Q2686/87, WMP50/100/150.

Ответственный за направление в КОМПЭЛе - Олег Пушкарев

Получение технической информации, заказ образцов, поставка -
e-mail: wireless.vesti@compel.ru

Вернуться к содержанию номера







Ваш комментарий к статье
Журнал "Новости Электроники", номер 19, 2007 год. :
Ваше имя:
Отзыв: Разрешено использование тэгов:
<b>жирный текст</b>
<i>курсив</i>
<a href="http://site.ru"> ссылка</a>