Ne2010 04

Page 1

СОДЕРЖАНИЕ №4 (84), 2010 г.

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Информационно-технический журнал.

AirPrime Q26 Extreme – первый программируемый модуль для 3G GSM-сетей (Sierra Wireless) Константин Староверов.................................................................. 3

Учредитель – ЗАО «Компэл»

Совмещенные приемные модули систем ГЛОНАСС/GPS производства КБ «ГеоСтар Навигация» Андрей Никитин......................................................................................................... 7

Издается с 2005 г. Свидетельство о регистрации: ПИ № ФС77-19835 Редактор: Геннадий Каневский vesti@compel.ru Выпускающий редактор: Анна Заславская Редакционная коллегия: Андрей Агеноров Евгений Звонарев Сергей Кривандин Николай Паничкин Александр Райхман Борис Рудяк Илья Фурман

Разработка систем телеметрии с применением технологии беспроводной передачи данных (Sierra Wireless) Александр Базулев....................................................................... 13 Дорога к «оазису», или практические вопросы перехода на операционную систему Oasis R7 (Sierra Wireless) Дмитрий Поваляев....................................................................... 16 Прибор для оценки дальности связи в сетях ZigBee (Digi) Олег Пушкарев............................................................................................... 19

МИКРОКОНТРОЛЛЕРЫ Новые микроконтроллеры STM32W для беспроводных приложений (STMicroelectronics) Андрей Самоделов................................................................. 23

Дизайн, графика, верстка: Елена Георгадзе Владимир Писанко Евгений Торочков Распространение: Анна Заславская Электронная подписка: www.compeljournal.ru

Отпечатано: «Гран При» г. Рыбинск

Тираж – 1500 экз. © «Новости электроники» Подписано в печать: 19 марта 2010 г.

В СЛЕДУЮЩИХ НОМЕРАХ Maxim – аналог и цифра Микроконтроллеры от STMicroelectronics Высоковольтные ИС управления от IR Если вы хотите предложить интересную тему для статьи в следующий номер журнала – пишите на адрес vesti@compel.ru с пометкой «Тема в номер».

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

1


ОТ РЕДАКТОРА

Уважаемые читатели! В обязанности редактора входит, в числе прочего, отслеживание реакции читателей на материалы журнала и обработка читательских запросов. За пять лет этой работы я однозначно выделил для себя тему, являющуюся безусловным лидером по количеству запросов, а следовательно – по интересу, проявляемому разработчиками. Это беспроводная передача информации. Постоянно движущийся и изменяющийся мир еще сильно опутан проводами. Они, как цепи, сковывают его, мешают ему развиваться. Беспроводная передача информации проникает во все отрасли. Основные из них: связь, транспорт (в том числе – трубопроводный), автоматизация производства, безопасность, оборона, медицина. Передача данных между звеньями технологической цепочки по-

2

лучила название M2M (MachineTo-Machine). Движение потребителей к беспроводным приложениям не остается незамеченным игроками рынка M2M. Пример: доля продаж беспроводной продукции известной компании Digi выросла за последние четыре года с 4 до 40%. Соответственно, доля проводной продукции этой компании снизилась. Другой показатель повышающегося интереса к беспроводной передаче данных – большое количество сделок по покупке большими компаниями-производителями малых нишевых компаний, которые имеют разработки в области современных беспроводных технологий. КОМПЭЛ работает с ключевыми игроками, поставляющими решения на мировой рынок M2M-приложений: Sierra Wireless, Digi International, Trimble, Bluegiga, Erco&Gener и другими. Эти компании пред-

лагают решения в области технологий 3G, GSM, Bluetooth, Wi-Fi, ZigBee. Таким образом, у нас есть предложения для любой задачи по разработке, сколь бы сложной и масштабной она ни была. В качестве примера мы публикуем в этом номере три материала, посвященных практическому применению беспроводных технологий. Три других статьи рассказывают о новинках беспроводного «железа», в том числе – о совмещенном решении для систем Глонасс/GPS отечественного разработчика КБ «Гео­Стар Навигация». Ждем ваших писем с вопросами и предложениями.

С уважением, Геннадий Каневский

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Константин Староверов

AirPrime Q26 Extreme – первый программируемый модуль для 3G GSM-сетей

В статье приводится обзор первого программируемого модуля беспроводного процессора Q26 Extreme компании Sierra Wireless, который поддерживает сети мобильной связи второго и третьего поколений.

Т

ехнология мобильной связи 3G, благодаря возможности передачи данных на скорости до 2 Мбит/с – в стационарном режиме, до 384 кбит/с – в режиме низкой мобильности (до 3 км/ч) и не менее 144 кбит/с – в режиме высокой мобильности (до 120 км/ч), открывает перспективы для модернизации существующих и появления новых M2M-применений. Появление нового поколения охранных систем, в т.ч. систем видеонаблюдения, систем мониторинга транспорта, платежных терминалов и других беспроводных применений, нуждающихся в повышении быстродействия канала связи, в первую очередь зависит от темпов развертывания 3G-сетей. В России право на развертывание 3G-сетей имеют все крупные мобильные операторы – Мегафон, МТС и Вымпелком. Начиная с 2007 года эти компании проделали огромную работу, и на данный момент в коммерческой эксплуатации 3G-сети работают во многих крупных городах в различных уголках России. Таким образом, существуют все необходимые условия для внедрения нового поколения M2M-применений, и самое время ознакомится с существующими техническими средствами для их реализации. В рамках данной публикации предлагается ознакомиться с одной из недавних разработок компании Sierra Wireless – модулем беспроводного процессора Q26 Extreme, который способен работать как в сети 2G (GSM/GPRS/EDGE), так и в 3G (WCDMA/HSxPA). Модуль выполнен в виде собранного на основе печатной платы устройства (рис. 1) длиной 40 мм, шириной 32,2 мм, высотой 6,3 мм и массой 11,8 г. Электронные компоненты, установленные с обеих сторон платы, закрыты экранирующими кожухами. Кожух в нижней части дополнен четырьмя монтажными ножками (1), предназначен-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

ными для фиксации модуля в целевой плате методом пайки, а также покрыт вспененным теплопроводящим материалом (3), который улучшает тепловой контакт и способствует лучшему отводу тепла. В нижней части модуля можно найти 100-выводной разъем (2) для его подключения к внешней схеме, а также РЧ-разъем (4) для подключения основной антенны. При необходимости паяного подключения коаксиального кабеля основной антенны предусмотрен альтернативный способ – контактные ламели (6). Для подключения по такому же способу предусмотрены контактные ламели разнесенной антенны (5). Модуль снабжается наклейкой с маркировкой согласно рис. 1. Q26 Extreme выполнен на основе двух процессоров: первый отвечает за РЧ-связь в 2G/3G-сетях, а другой – за реализацию прикладных функций (рис. 2). РЧ-тракт модуля способен рабо-

дачу данных на скорости до 7,2 Мбит/с (HSDPA, категория 8). РЧ-процессор поддерживает работу с основной и разнесенной антеннами. В случае последней, как уже упоминалось, предусмотрена отдельная РЧ-ламель для паяного подключения коаксиального кабеля антенны (рекомендованный тип кабеля RG178). Характеристики РЧ-тракта совместимы с рекомендациями ETSI GSM 05.05: чувствительность приема во всех диапазонах 3G 106,7 дБм; избирательность (200/400 кГц) свыше 9/41 дБн; линейный динамический диапазон приемника 63 дБ; ослабление совмещенного канала не менее 9 дБн; максимальная выходная мощность во всех диапазонах 3G 24 дБм + 1/-3 дБ. Все рабочие характеристики модуля действительны для рабочего температурного диапазона -20...55°C, однако с некоторыми ограничениями он может работать и в более широком температурном диапазоне

Модуль беспроводного процессора Q26 Extreme компании Sierra Wireless выполнен на основе двух процессоров: первый отвечает за РЧ-связь в 2G/3G-сетях, а другой – за реализацию прикладных функций (рис. 2). РЧ-тракт модуля способен работать в трех диапазонах 3G-сетей (диапазоны I, II и V по стандарту WCDMA) и четырех диапазонах 2G-сетей (GSM850, E-GSM900, DCS1800, PSC1900); процесс переключения между 2G- и 3G-сетями полностью автоматизирован. тать в трех диапазонах 3G-сетей (диапазоны I, II и V по стандарту WCDMA) и четырех диапазонах 2G-сетей (GSM850, E-GSM900, DCS1800, PSC1900); процесс переключения между 2G- и 3G-сетями полностью автоматизирован. Работая в 3G-сети, модуль поддерживает исходящую пакетную передачу данных на скорости до 2 Мбит/с (HSUPA, категория 5) и входящую пакетную пере-

-30...75°С. К числу таковых относится ограничение длительности передачи при уровнях мощности, близких к максимальному значению. В качестве прикладного процессора в модуле используется 32-битный процессор ARM946 с возможностями исполнения кода программы с производительностью до 88 MIPS. Его собственная частота синхронизации программирует-

3


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ Таблица 1. Сравнение возможностей по управлению модулем посредством AT-команд и из ОС Open AT Поддержка управления AT-командами

Поддержка управления ОС Open AT

Последовательный интерфейс Интерфейс клавиатуры Основной последовательный канал Вспомогательный последовательный канал Интерфейс USIM Ввод-вывод общего назначения Аналогово-цифровой преобразователь Аналоговый аудио-интерфейс Выход звукового излучателя Интерфейс зарядного устройства Внешнее прерывание Сигнал LED0 Цифровой аудио-интерфейс (PCM) Интерфейс USB2.0

Встроенная функция

– Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть – Есть

Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть Есть

ся до 104 МГц. Процессор оснащен кэшпамятью данных и инструкций (каждая по 8 кбайт) и характеризуется быстродействием доступа к памяти до 52 МГц.

Прикладной процессор исполняет запрограммированную в модуль операционную систему реального времени (ОСРВ) Open AT® вместе с обширным набором плагинов (поддерживаются бесплатной средой для программирования M2M Studio). Данное программное обеспечение предоставляет возможность управления модулем в двух режимах: в режиме модема посредством AT-команд, передаваемых внешним микропроцессором через последовательный интерфейс, и в режиме беспроводного процессора посредством исполнения написанной на языке Си или LUA программы. Последний язык имеет более широкие возможности по управлению встроенными ресурсами и позволяет реализовать полностью автономное устройство, которое не требует дополнения внешним микропроцессором (таблица 1).

Рис. 1. Внешний вид и маркировка модуля Q26 Extreme

Рис. 2. Укрупненная структура модуля Q26 Extreme

4

Встроенный прикладной процессор дополнен множеством интерфейсов, среди которых: • коммуникационные интерфейсы: 2x UART (UART1 – основной интерфейс до 921 кбит/с V24-совместимый; UART2 – вспомогательный интерфейс для подключения модулей Bluetooth/ GPS до 921 кбит/сек); интерфейс USB 2.0 – 12 Мбит/с; • интерфейсы цифрового ввода/вывода: 2х SPI (102 кбит/с...13 Мбит/с); 1х I2C (до 400 кбит/с); параллельный интерфейс EBI; интерфейс 1.8-/3-вольтовых SIM-карт; интерфейс ввода/ вывода общего назначения (45 линий, мультиплексированы с сигналами других внутренних интерфейсов); цифровой аудио-интерфейс PCM (16 бит, 768 кГц, 6 слотов, используемый слот – 4); интерфейс клавиатуры (матрица 5х5); • интерфейсы аналогового ввода/ вывода: АЦП (два входа, разрешающая способность более 10 бит, 1635 отсчетов, входной диапазон 0…2 В, периодичность оцифровки 0,5...3 с.); ЦАП (один выход, разрешающая способность 8 бит, выходной диапазон 0...2,3 В, время установления не более 40 мкс); аналоговый аудио-интерфейс (два микрофонных входа с поддержкой несимметричного и дифференциального режимов, два дифференциальных усилителя мощности ЗЧ 16 мВт (32 Ом) и 250 мВт (8 Ом)); интерфейс звукового излучателя (ШИМ-коммутатор с выходом типа «открытый сток», импульсный ток нагрузки не более 100 мА, частота ШИМ 1...50 кГц) • прочие интерфейсы: интерфейс зарядного устройства (поддерживает два алгоритма зарядки и один полностью аппаратно-реализованный режим буферного подзаряда аккумуляторов трех типов: Ni-Cd, Ni-Mh, Li-ION); интерфейс включения/отключения модуля (вывод ON/~OFF); интерфейс сброса (~RESET); интерфейс внешних прерываний (три входа с настраиваемой чувствительностью к нарастающему, падающему или обоим фронтам);

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

интерфейс резервного питания ЧРВ (1,85...3 В) Все сигналы перечисленных интерфейсов вместе с линиями питания сведены в 100-выводной разъем (шаг выводов 0,5 мм). На плате модуля установлена вилка разъема, а на целевой плате должна быть предусмотрена ответная розетка. Компания Sierra Wireless рекомендует использовать розетку AXK500147BN1J от разъема серии P5K (Panasonic). Сведения по совместимости с модулем Q2686 Модуль Q26 Extreme является одним из представителей семейства Q26. Для работы в сетях G2 по стандартам GSM/GPRS в этом семействе также имеется другой модуль – Q2686. Пользователям этих модулей, которые желают модернизировать свои разработки в направлении добавления поддержки 3G-сетей, конечно интересно получить информацию об их совместимости с Q26 Extreme. Сравниваемые модули имеют идентичный формфактор и размеры, за исключением толщины, которая у Q26 Extreme, за счет размещения дополнительного экранирующего кожуха, на 2,3 мм больше. Координаты расположения РЧ-разъема (тип UFL), 100-выводного разъема и четырех монтажных ножек полностью идентичны у обоих модулей. РЧ- разъем IMP, который имеется у Q2686, у 3G-модуля не предусмотрен. Подключение разнесенной антенны предусмотрено только у Q26 Extreme. Далее перейдем к отличиям в рабочих условиях. Если в существующей разработке 2G-модуль использовался с расчетом на поддержку диапазона -30...85°С, который связан с отклонением некоторых рабочих характеристик, то необходимо обратить внимание, что в таком применении рабочий диапазон Q26 Extreme ограничен до 75°С. Номинальное напряжение питания всех модулей совпадает и равно 3,6 В, однако его минимальное и максимальное значение отличаются. У Q26 Extreme минимальное значение равно 3,4 В (у Q2686 – 3,2 В), а максимальное – 4,2 В (у Q2686 – 4,8 В). Q26 Extreme при передаче на скоростях HSDPA/HSUPA c максимальной выходной мощностью характеризуется потребляемым током 820/800 мА, что вдвое больше максимального потребления 2G-модуля. Наконец, имеют место некоторые отличия в назначении выводов. Они представлены в таблице 2. Описанные отличия могут стать основанием для модификации имеющейся схемы включения Q2686 при необходимости сделать ее совместимой с Q26 Extreme. Чтобы достоверно установить, какая из частей схе-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

Рис. 3. Последовательность включения модуля в работу

Рис. 4. Встроенное зарядное устройство мы подлежит изменению, компания Sierra Wireless рекомендует заполнить карту проверки схемы, шаблон которой приведен в [1]. Последовательность включения модуля в работу Для включения модуля Q26 Extreme в работу помимо подачи напряжения питания необходимо инициировать запуск последовательности включения. Для этого на вывод ON/OFF подается высокий уровень в течение времени не менее tON/OFF-HOLD. По истечении этого времени внутренний механизм будет помнить о необходимости продолжения последовательности включения. По ходу данной последовательности автоматически генерируется сброс модуля (состояние RESET) длительностью 40мс. Приложение внешнего сигнала сброса на данной фазе необходимо исключить. По завершении сброса модуль переходит к своей инициализации (состояние ON), длительность которой зависит от

SIM-карты и сети мобильной связи. По окончании инициализации через ATинтерфейс генерируется ответ «OK» и модуль начинает работу по назначению (состояние READY). Описанную последовательность иллюстрирует рис. 3. Длительность выдержки времени tON/ OFF-HOLD зависит от многих факторов. Ее типичное значение составляет 3,5 с, однако применение такого значения не гарантирует успешного завершения последовательности включения. В такой ситуации возможность возврата сигнала ON/OFF в низкое состояние лучшего всего определить по индикаторам WIND или по факту передачи ответа «OK» по AT-интерфейсу. Если их использование не предусмотрено, рекомендуется использовать значение tON/ OFF-HOLD при наихудших условиях, которое составляет 8 с. Также возможен вариант длительного сохранения сигнала ON/OFF в высоком состоянии и его перевод в низкое состояние непосредственно перед переводом модуля в со-

5


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ Таблица 2. Отличия в назначении выводов модулей Q2686 и Q26 Extreme Q2686

Номер вывода

Имя вывода

42

резерв

Назначение не используется

Q26 Extreme Применение

Имя вывода

Назначение

A1

Шина адреса

Мультиплексирован с сигналом синхронизации 32 кГц

GPIO_0

Применение 1,8 В

43

GPIO_0

линия ввода/вывода (в/в) общего назначения

51

GPIO1

линия в/в общего назначения

1,8 В

CS2/GPIO1/ INT2

53

GPIO2

линия в/в общего назначения

1,8 В

A24

83

NC-5

нет подключения

/CS3/GPIO44/ PWM1

Выбор микросхемы, линия в/в общего назначения, ШИМ-выход

81, 84-100

NC

нет подключения

Параллельный интерфейс

Интерфейс параллельной шины (EBI)

1,8 В

Рис. 5. Внешний вид программируемого шлюза Fastrack XTEND HSPA стояние OFF (инициированное, например, командой AT+CPOF). Встроенное зарядное устройство Модуль Q26 Extreme оснащен блоком зарядного устройства (ЗУ). Его структурная схема представлена на рис. 4. На базе единой схемы данный блок поддерживает два алгоритма заряда и один полностью аппаратно-реализованный

алгоритм буферного подзаряда аккумуляторов трех типов (Ni-Cd, Ni-Mh, Li-Ion). Принцип действия зарядного устройства основан на подключении напряжения источника питания ЗУ с вывода CHG_IN к выводу VBATT, подключенного к аккумулятору. Для этого в блоке ЗУ предусмотрен специальный коммутатор. Частота и длительность коммутации определяется алгоритмом

линия в/в общего назначения

Мультиплексирование не используется

Выбор микросхемы, линия в/в общего назначения, вход прерывания

1,8 В

Шина адреса

1,8 В

зарядки. В процессе зарядки контролируется напряжение на аккумуляторе, а при зарядке аккумуляторов типа Li-Ion дополнительно контролируется температура через вход ADC1/BAT-TEMP с помощью внешнего термистора (NTC). После перевода модуля Q26 Extreme в состояние OFF, в блоке ЗУ активизируется специальный режим буферного подзаряда. Он позволяет избежать глубокого разряда аккумулятора, когда имеют место длительные перерывы в работе модуля (т.е. длительно не выполняются основные алгоритмы заряда). В качестве источника питания зарядного устройства может использоваться любой сетевой источник питания с выходным напряжением 4,6...6 В, нагрузочной способностью 1С (или в соответствии с требованиями к току заряда используемого аккумулятора) и пульсациями выходного напряжения не более 150 мВ. В заключение необходимо отметить, что модуль Q26 Extreme является основной для построения еще одной новинки Sierra Wireless – программируемого шлюза Fastrack XTEND HSPA (рис. 5). Данное устройство допускает интеграцию в состав разнообразного промышленного оборудования или может использоваться автономно. Предусмотрена возможность подключения выполненных по открытым стандартам плат расширения ввода/вывода (например, для добавления поддержки технологий GPS, WiFi, Bluetooth, Zigbee и др.) Компания Sierra Wireless предлагает платы расширения GPS и Ethernet. Литература 1. Differences between Q26Extreme and Q268x//Q26 Wireless CPU® Compatibility Document, Wavecom, Ref: WA_DEV_ Q26EX_PTS_0022, 26/11/2008 – 20p.

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

6

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Андрей Никитин

Совмещенные приемные модули систем ГЛОНАСС/GPS производства КБ «ГеоСтар Навигация»

В первой части статьи рассказывается об истории развития навигационных систем GPS и ГЛОНАСС и текущем состоянии системы ГЛОНАСС. Во второй части рассмотрены преимущества навигации по общему созвездию спутников обеих систем и совмещенные приемные модули систем ГЛОНАСС/GPS, предлагаемые на рынок отечественным КБ «ГеоСтар Навигация».

Г

лобальная навигационная спутниковая система (ГНСС) – комплексная электроннотехническая система, состоящая из совокупности наземного и космического оборудования, предназначенная для определения местоположения (географических координат и высоты), параметров движения (скорости, направления движения и т. д.) и временной синхронизации для наземных, водных и воздушных объектов.

История развития глобальных навигационных спутниковых систем В настоящее время в эксплуатации находятся две ГНСС: американская NAVSTAR (GPS) и российская система ГЛОНАСС. Объем статьи не позволяет подробно рассмотреть принципы работы этих систем, однако эти вопросы были неоднократно и достаточно подробно освещены в литературе, например [1...3], поэтому ограничимся хронологией. Работы по созданию системы NAVSTAR (NAVigation Satellites providing Time And Range – навигационные спутники, обеспечивающие измерение времени и расстояния) начались в США в 1973 году по заказу Министерства обороны США. Запуск одиннадцати спутников первой группы (Block I) был осуществлен в 1978-85 годах. В период с 1979 по 1988 программа то приостанавливалась, то вновь возобновлялась, но, тем не менее, в 1994 году спутниковая группировка была укомплектована, и в июле 1995 года было объявлено о полной готовности системы из 24 спутников. Хотя 24 спутника обеспечивают стопроцентную работоспособность системы в любой точке Земли, такое количество не всегда может обеспечить уверенный прием сигнала и хо-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

роший расчет положения объекта. В настоящее время для увеличения точности позиционирования и резерва на случай сбоев общее число спутников на орбите поддерживается в большем количестве (максимум – 32 аппарата, часть которых периодически отключается для плановой диагностики). Советская (в дальнейшем – российская) система «ГЛОНАСС» (ГЛОбальная НАвигационная Спутниковая Система) разрабатывалась в качестве «адекватного ответа» по заказу Министерства обороны СССР. Первый спутник был запущен в 1982 году. 24 сентября 1993 года система была официально принята в эксплуатацию с орбитальной группировкой из 12 спутников. В декабре 1995 года спутниковая группировка была развернута до штатного состава – 24 спутника. Заметим, что за это время в общей сложности был запущен 71 космический аппарат «Глонасс» (военное название «Ураган»), однако малый расчетный срок службы космических аппаратов (3 года) и несколько неудачных запусков не позволяли планомерно наращивать состав орбитальной группировки. Изначально обе системы предназначались только для военных целей. Решение о частичном использовании системы навигации для гражданских целей было принято Правительством США после того, как в 1983 году был сбит, вторгшийся в воздушное пространство СССР, самолет корейских авиалиний. Тем не менее, для гражданских потребителей точность позиционирования была искусственно занижена (эти ограничения были сняты только в 2000 году). На отечественном рынке приемники системы NAVSTAR (GPS) стали появляться в 1993 году. Целевая аудитория на тот момент была достаточно ограниченной

(если не сказать, точечной): геодезия, некоторые задачи авиации (например, аэрофотосъемка) и морского флота, привязка к системе единого времени. Внедрению на более объемные сегменты рынка (например, мониторинг транспортных средств) препятствовала высокая стоимость аппаратуры. В каком состоянии на тот момент пребывала система ГЛОНАСС? Пациент был скорее мертв, чем жив. Декабрь 1995 года – на орбите 25 спутников; в декабре 1998 года – состав орбитальной группировки сократился до тринадцати космических аппаратов; в октябре 2000 года – до восьми; в декабре 2001 – до шести; в декабре 2002 года – семь спутников. [4]. Относительно приличный вид орбитальная группировка приняла только 25 декабря 2005 года, когда ее состав увеличился до тринадцати космических аппаратов. К концу 90-х годов появились приемники, поддерживающие обе системы (NAVSTAR и ГЛОНАСС), которые выпускались как отечественными, так и зарубежными производителями. Соответственно, вопрос о предоставлении сигналов «ГЛОНАСС» гражданским потребителям решился автоматически. Но, во-первых, двухсистемные приемники были дороже, нежели односистемные (NAVSTAR), а во-вторых – состояние орбитальной группировки ГЛОНАСС не позволяло вносить заметный вклад в конечный результат (было непонятно за что платить лишние деньги). К 2000 году 76% рынка навигационной аппаратуры потребителя (НАП) занимали автомобильные приложения [5] – главным образом, мониторинг транспортных средств. Система ГЛОНАСС практически никак не участвовала на этом рынке. Именно в этот момент произошла нелестная для отечественных производителей подмена понятий. Строго го-

7


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 1. Зоны видимости системы ГЛОНАСС для заданной точки земной поверхности воря, термины GPS (Global Positioning System – Глобальная система позиционирования) и ГНСС (Глобальная Навигационная Спутниковая Система) – это синонимы, которые описывают некое понятие, то есть определенный класс систем. Термины NAVSTAR и ГЛОНАСС – реализации таких систем, то есть конкретные проекты. Однако тот факт, что других реально функционирующих ГНСС (GPS) кроме NAVSTAR не было, привел к тому, что под GPS стала пониматься именно система NAVSTAR. Соответственно, «Совмещенные приемники ГЛОНАСС/GPS» стал общепринятым термином «де-факто». Хуже другое: длительное вялотекущее состояние «ГЛОНАСС: то ли он есть, то ли его нет» в значительной степени подорвало у потребителей доверие к системе ГЛОНАСС, как к общественно значимому отечественному бренду, и эту ситуацию предстоит исправлять. Современное состояние системы ГЛОНАСС Некоторые положительные сдвиги начались с принятием в 2001 году Федеральной целевой программы «Глобальная навигационная система» [6]. Она состоит из пяти подпрограмм, из которых наиболее значимыми можно считать первые три: • Обеспечение функционирования и развития системы ГЛОНАСС; • Разработка, подготовка производства и изготовление навигационного оборудования и аппаратуры для гражданских потребителей; • Внедрение и использование спутниковых навигационных систем на транспорте. Фактические изменения к лучшему можно отсчитывать от 25 декабря 2005 года, когда начала осуществляться за-

8

мена спутников семейства «Глонасс» на спутники «Глонасс-М» (военное наименование «Ураган-М»). Основными характерными отличиями были: • Срок активного существования спутника увеличен до семи лет; • Точность позиционирования увеличена в 2...2,5 раза за счет предоставления гражданским пользователям сигналов в двух диапазонах L1 (1598...1609 МГц) и L2 (1243...1252 МГц). В дальнейшем было осуществлено семь запусков (по три спутника в каждом), таким образом, на орбиту было выведено 23 спутника «Глонасс-М» (с учетом двух спутников, запущенных 25.12.2005). Из спутников, входящих в состав орбитальной группировки (по состоянию на 08.03.2010): • 18 используется по целевому назначению; • Два временно выведены на техобслуживание. В течение 2010 года планируется еще два запуска, а именно: три спутника «Глонасс-М» в сентябре и три спутника в декабре (два «Глонасс-М» и один спутник третьего поколения «Глонасс-К»). Таким образом, в течение этого года орбитальная группировка будет полностью укомплектована. К вопросу о надежности спутников. Из 23 спутников «Глонасс-М» на данный момент из состава орбитальной группировки окончательно выведен только один, проработавший 42 месяца. Максимальную наработку (62 месяца) на данный момент имеет «переходной» (от «Глонасс» к «Глонасс-М») спутник, запущенный в декабре 2004 года и все еще входящий в состав группировки. Периодически ряд спутников выводился на техобслуживание, но возвращался в состав орбитальной группировки через непродолжительное время. Труд-

но оценить, насколько объективен срок эксплуатации в семь лет, но на данный момент каких-то оснований ожидать «обвала» нет. Что орбитальная группировка обеспечивает на сегодняшний день? На рисунке 1 представлен расчет зоны видимости системы ГЛОНАСС для конкретной точки Земли (в частности, город Минск). Видим, что на протяжении всех суток видно не менее четырех спутников (минимальное количество, необходимое для расчета координат и высоты), а, как правило, число видимых спутников существенно больше. Считается, что для определения с заявленной точностью необходимо, чтобы значение PDOP (позиционный трехмерный геометрический фактор) было меньше шести. Интегральная доступность рассчитывается на основе текущего альманаха для суточного интервала как процент времени, в течение которого это условие выполняется. На рис. 2 представлена интегральная доступность навигации наземного потребителя по системе ГЛОНАСС. Опять же учтем ожидаемый ввод в эксплуатацию трех недавно запущенных спутников. Внимание Правительства РФ к системе ГЛОНАСС Напомним, что спутниковая навигационная система включает в себя три сегмента: 1. Космический. К нему относятся спутники, выведенные на орбиту Земли. 2. Наземный сегмент управления. Он состоит из главной станции, совмещенной с вычислительным центром группы контрольно-измерительных станций, и наземного эталона времени и частоты. (Более подробно – в источниках [1...3]). 3. Наземный сегмент потребителей. К нему относится приемное оборудование всех конечных пользователей ГНСС. Основная задача навигационной аппаратуры потребителей (НАП) – прием информации со спутников, ее интерпретация и вывод на дисплей либо в канал связи в надлежащем виде. Если с первыми двумя сегментами все понятно (они финансируются из бюджета), то третий сегмент оплачивается конечным пользователем, и его необходимо убедить перейти от более дешевых односистемных GPS-приемников на более дорогие (а это объективная реальность) двухсистемные ГЛОНАСС/ GPS. Заказчиков Министерства обороны и других силовых структур, а также авиацию, морской флот и МЧС особенно убеждать не надо. Там понятно, что поскольку система NAVSTAR принадлежит Министерству обороны США,

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ то она именно им и контролируется, а, следовательно, может быть отключена (или загрублена) в неких конфликтных ситуациях или в других случаях, если возникнет такая необходимость (прецеденты были). И возразить здесь нечего – это их система. Другое дело, что это решение затронет интересы потребителей, хотя бы и нейтральных по отношению к данной конфликтной ситуации. Наличие аппаратуры потребителя, поддерживающей собственную навигационную систему, будет допустимым выходом из положения, пусть и с некоторой потерей качества. Заинтересованность в двухсистемной аппаратуре должны проявлять аналогичные ведомства других государств; причина также понятна: есть две системы, пусть обе чужие, но вероятность, что будет работать хотя бы одна, больше. Тем не менее, объем рынка военных приложений, использующих навигационные технологии, достаточно ограничен. По прогнозам на 2010 год [5], более 70% рынка НАП будут занимать мобильные устройства (сотовые телефоны, PDA, навигаторы и т.п.). На этом рынке радужных перспектив у производителей двухсистемных решений немного. Конечным потребителем, как правило, является частное лицо, которое, по понятным причинам, далеко как от проблем безопасности, так и от преимуществ технических характеристик совмещенных приемников. Более низкие цены на приемники NAVSTAR частному потребителю, наоборот, близки и понятны. И вряд ли какие-то решения Правительства переломят эту ситуацию (тем более, что и мобильных устройств, поддерживающих ГЛОНАСС, пока не наблюдается). Остается сегмент корпоративных потребителей. Как правило, это аппаратура для мониторинга транспортных средств. По тем же прогнозам на 2010 год ее доля на рынке НАП составит 23%. Снижение по сравнению с 2000 годом отнюдь не связано с потерей интереса к этим приложениям – он, наоборот, растет. Но за стремительными темпами внедрения навигационных технологий в мобильные устройства угнаться невозможно. И по отношению к транспортному сегменту действия Правительства вполне адекватны. Постановление Правительства РФ от 25 августа 2008 г. «Об оснащении транспортных, технических средств и систем аппаратурой спутниковой навигации ГЛОНАСС или ГЛОНАСС/GPS» [7] определяет: 1. Оснащению аппаратурой спутниковой навигации ГЛОНАСС или ГЛОНАСС/GPS подлежат следующие транспортные, технические средства и системы: а) космические средства (ракетыносители, разгонные блоки, космиче-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 2. Интегральная доступность навигации наземного потребителя по системе ГЛОНАСС ские аппараты и корабли, спускаемые капсулы (аппараты)); б) воздушные суда государственной, гражданской и экспериментальной авиации; в) морские суда и суда внутреннего речного и смешанного («река – море») плавания; г) автомобильные и железнодорожные транспортные средства, используемые для перевозки пассажиров, специальных и опасных грузов; д) приборы и оборудование, используемые при проведении геодезических и кадастровых работ; е) средства, обеспечивающие синхронизацию времени. Подобное решение, конечно же, является протекционизмом, но вполне понятным по отношению к проектам, которые, в той или иной степени, финансируются из бюджета. Другое дело, что дальнейшее развитие наземного пользовательского сегмента ГЛОНАСС невозможно без вложений в развитие отечественной элементной базы для навигационной аппаратуры, а также определенных льгот для производителей аппаратных и программных средств НАП. Преимущества технологии навигации по объединенному созвездию ГЛОНАСС/GPS Глобальные навигационные спутниковые системы определяют местоположение, скорость и точное время. Однако существенным фактором, влияющим на точность работы наземного навигационного оборудования, является количество видимых на небосклоне спутников. Для гарантированной работы GPS необходимо открытое пространство, когда в поле зрения находится максимальное число спутников, и отсутствуют отраженные сигналы. При наличии различных затенений радиовидимости, которые характерны

для условий применения на наземном транспорте, а особенно в условиях современного городского ландшафта, возможности точного позиционирования значительно ухудшаются. Количество видимых спутников одной системы может быть недостаточным для решения навигационной задачи с требуемой точностью, и само решение часто становится невозможным. Использование двух навигационных систем улучшает и расширяет возможности для потребителей. Характерным примером является работа навигационного приемника вблизи стены дома, когда физически половина небосвода закрыта. В таких условиях использование ГЛОНАСС совместно с GPS существенно (почти в два раза) повышает надежность и достоверность приемника по определению координат. Поскольку решение навигационных задач на наземном транспорте предполагает работу в условиях частичных и частых затенений радиовидимости, приемник ГЛОНАСС+GPS имеет значительные преимущества перед любым односистемным приемником GPS или ГЛОНАСС. Система ГЛОНАСС, в отличие от GPS, позволяет осуществлять уверенный прием навигационного сигнала в северных и южных полярных широтах Земли. Совмещенные ГЛОНАСС/GPSприемники компании «ГеоСтар Навигация» Рассматривая ГЛОНАСС/GPSприемники, предлагаемые отечественными производителями, ограничимся только одним классом, а именно OEM-приемниками, то есть законченными модулями, предназначенными для встраивания в качестве электронного компонента в законченные изделия различного назначения. Ряд произво-

9


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 3. Совмещенный ГЛОНАСС/GPS-приемник ГеоС-1

Рис. 4. Структурная схема приемника ГеоС-1 дителей предлагают на рынок и законченные навигационные изделия для морских, авиационных, наземных носителей, и геодезическую аппаратуру, однако в основе этих изделий все равно лежат OEM-приемники. КБ «ГеоСтар Навигация» предлагает на рынок два приемника: ГеоС-1 и ГеоС-1м. ГеоС-1 представляет собой законченную плату, представленную на рис. 3.

10

Приемник использует сигналы со спутников обеих навигационных систем ГеоС-1, что позволяет определить точное местоположение объекта там, где это невозможно (или возможно с ограничениями – режим 2D) в случае использования систем по отдельности. Приемник ГеоС-1 способен получать данные местоположения, используя или только сигналы ГЛОНАСС, или только GPS, или работая по совмещенному созвездию ГЛОНАСС+GPS. Структурная схема приемника представлена на рис. 4. Цифровая часть приемника ГеоС- 1 состоит из БИС процессора с архитектурой ARM-7 (AT91FR40162S компании Atmel) и коррелятора с акселератором (автомат быстрого поиска), выполненного на заказной БИС, являющейся разработкой ФГУП НИИМА «Прогресс». Применение специализированной микросхемы обеспечивает достижение высоких показателей по времени от подачи питания до первых координат и высокие показатели чувствительности приемника. За счет аппаратной реализации алгоритмов поиска ГеоС-1 обеспечивает получение навигационных данных в течение 36 секунд в «холодном» старте и в течение 4 секунд в «горячем» старте. Точность определения координат (среднеквадратичное отклонение) в плане 3 м, по высоте 5 м. Точность определения скорости 0,05 м/с. Темп выдачи навигационной информации – пять раз в секунду. Приемник выдает импульс метки времени (1PPS – один импульс в секунду) с точностью 50 нс по отношению к шкале времени GPS-Time. Чувствительность приемника в режиме обнаружения составляет -170 дБВт; в режиме слежения -180 дБВт. Требования к антенне: активная, с дополнительным усилением 10...35 дБ. Питание 3,3 В ±5%; потребляемая мощность в режиме слежения 500 мВт, в дежурном режиме (питание от батарейного источника) 20...30 мкВт. Каналы обмена данными: один канал USB 2.0, два дуплексных канала RS-232 (уровни сигналов LVTTL) с программно задаваемой скоростью передачи 4800...203400 бит/с. В зависимости от используемых каналов обмена (два канала RS-232 или один канал RS232 + USB) и исполнения батарейного источника питания (установленный на плате или внешний) возможны четыре варианта исполнения, обозначаемые в заказе как суффикс «xx» в наименовании ГеоС-1хх. Габаритные размеры изделия 47х35х9 мм. Фотография приемника Геос-1м представлена на рис. 5. В отличие от ГеоС-1, который устанавливается в аппаратуру пользователя автономно и соединяется с плата-

ми пользователя кабелями, приемник ГеоС-1м представляет собой модуль для поверхностного монтажа. Модуль непосредственно распаивается на пользовательскую печатную плату в рамках единого цикла ее монтажа. Габаритные размеры ГеоС-1м 35х35х3 мм (то есть на 47% меньше ГеоС-1). Вариант исполнения один – два канала RS-232 и внешний батарейный источник. Потребляемая мощность, по сравнению с ГеоС-1, также снижена и составляет 350 мВт в режиме слежения. Технические характеристики модуля и его структура (за исключением отсутствия USB-порта) аналогичны приведенным для ГеоС-1. Оба приемника являются изделиями гражданского назначения. Высокая чувствительность приемника и скорость определения координат в совокупности с малыми габаритами и низкой потребляемой мощностью обеспечивают их успешное применение в бортовой аппаратуре различных систем мониторинга транспорта. Протоколы выдачи навигационной информации Приемники обеспечивают два способа обмена навигационной информацией: символьный протокол NMEA 0183 v.3.01 и собственный бинарный протокол обмена. Данные в обоих протоколах выдаются приемником одновременно, но каждый – по своему каналу. По умолчанию, по каналу №0 выдаются данные бинарного протокола, по каналу №1 – NMEA. Используя соответствующую команду бинарного протокола, можно переприсвоить информационные протоколы другим коммуникационным каналам, то есть бинарный протокол будет выдаваться по каналу №1, а NMEA – по каналу №0. По каналу USB могут передаваться данные только одного из протоколов. Протокол NMEA (National Marine Electronics Association) – полное название «NMEA 0183» – символьный протокол связи навигационного оборудования между собой. Используется почти во всех GPS-приемниках ввиду своей простоты. Поскольку приемник имеет последовательный интерфейс RS-232, то «общаться» с ним можно, подключив его, например, к IBM PC-совместимому компьютеру (согласовав, естественно, уровни сигналов, скорость передачи и формат посылки). Поскольку формат данных символьный, то просматривать и «дешифрировать» сообщения пользователь может (при некотором навыке), используя какую-либо терминальную программу (в простейшем случае программу «HyperTerminal», входящую в состав ОС Windows), не разрабатывая специального программного обеспечения.

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ Протокол NMEA не предусматривает посылку запросов в приемник. Приемник автоматически генерирует определенный набор сообщений, предусмотренный встроенным программным обеспечением. Формат пакетов приемника ГеоС-1 и их подробное описание приведены в документе «ГеоС-1. Руководство по эксплуатации [8]. Собственный бинарный протокол. Как правило, производитель навигационных приемников в дополнение к протоколу NMEA предлагает собственный протокол, обеспечивающий: • Возможность настройки режимов работы приемника; • Получение расширенной навигационной (по сравнению с NMEA) информации; • Получение информации в ответ на запросы, посылаемые в приемник. Формат передачи, как уже отмечалось, бинарный (то есть, двоичный) – значение конкретного параметра передается не в ASCI-кодах, а виде двоичного числа; форматы в терминах языка C (byte, short, int, float, double и другие), выбираемого в зависимости от разрядности и способа представления данных. Таким образом, просмотр сообщений на компьютере возможен, но простейшие терминальные программы непригодны – для «дешифрации» необходимо использовать специальные программы. Дополнительная информация может включать в себя сообщения об альманахах, эфемеридах, измерительную информацию от спутников, данные о положении как в географических (широта, долгота, высота), так и в геоцентрических (расстояния X, Y, Z от центра геоида) координатах. Возможны тонкие настройки приемника (например, выключение и включение конкретного спутника из расчета положения) и другие функции. В общем случае протокол содержит ряд пакетов беззапросных сообщений (то есть, сообщений, отсылаемых приемником автоматически по мере их формирования), пакеты установок, запросов и команд, принимаемых приемником от контроллера и ответы на установки, запросы и команды, которые отсылаются приемником в контроллер. Полный перечень пакетов бинарного протокола, их формат и описание также приведены в [8]. Платы коммутации и программное обеспечение GeoSDemo Для демонстрации работы приемников разработаны платы коммутации (соответственно, GeoS-1 DemoKit и GeoS-M DemoKit, представленные на рисунке 6) и программное обеспечение для персонального компьютера GeoSDemo. Плата коммутации осуществляет следующие функции:

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ • Формирование основного напряжения питания 3,3 В из входного постоянного напряжения 5...30 В; • Подключение внешнего резервного источника напряжения (батарейки) к приемнику (для вариантов исполнения с внешней батареей) и возможность его отключения (для использования вариантов исполнения с батарейным источником питания, установленным на плате); • Преобразование стандартных уровней сигналов RS-232 в уровни LVTTL и обратно; • Подключение к портам USB и RS232 персонального компьютера; • Коммутацию входного напряжения питания от внешнего источника или через разъем USB; • Буферирование и вывод на ВЧразъем секундной метки времени 1PPS; • Индикацию наличия напряжения 3,3 В и активности портов RS-232. Плата коммутации осуществляет подсоединение приемника к внешнему оборудованию (источнику питания, портам USB/RS-232 компьютера). Программное обеспечение GeoSDemo является демонстрационным программным обеспечением приемников GeoS-1 и GeoS-M. Программа позволяет: • Производить автоматическое или ручное подключение к приемнику по последовательным портам RS-232 и USB; • Отображать выходную навигационную информацию приемника, в том числе и в графическом виде; • Формировать и посылать в приемник команды, запросы и установки; • Отображать ответы приемника на команды, запросы и установки; • Осуществлять запись выходной информации в лог-файлы; • Производить чтение записанных ранее лог-файлов; • Формировать и записывать протокол работы приемника; • Производить обновление программного обеспечения приемника;

Рис. 5. Совмещенный ГЛОНАСС/GPS-приемник ГеоС-1м На рисунке 7 представлено основное окно программы GeoSDemo. Поле 1 содержит информацию о дате и времени, географические координаты и высоту, значения геометрического фактора DOP в плоскости и по высоте, скорость и курс носителя. В поле 2 размещена карта положения спутников, а также информация о спутниках GPS и ГЛОНАСС, отслеживаемых приемником («КА в слежении») и принимающих участие в расчете («КА в решении»). Также на карте отображаются спутники, угол возвышения которых ниже минимального. В поле 3 основного окна расположена статусная строка, в левой части которой отражаются статус подключения и параметры COM-портов ПК (номер и скорость обмена), настроенных на прием данных бинарного и NMEA протоколов. Надпись «USB» справа от номера COM-порта означает, что подключение произведено через виртуальный COMпорт, который создается драйвером USB. В поле 4 отображаются системная дата и время компьютера в соответствии с региональными настройками и статус аппаратной телеметрии приемника. Индикатор «Синт.» показывает состояние

Рис. 6. Платы коммутации GeoS-1 DemoKit и GeoS-M DemoKit

11


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Sierra Wireless в 2010 году прекращает выпуск GSM-модема Fastrack Supreme

Рис. 7. Основное окно программы GeoSDemo телеметрии синтезатора частоты приемника, а индикатор «Ант.» – состояние телеметрии напряжения питания антенны. В поле 5 основного окна размещена панель, содержащая набор из четырех вкладок: «Каналы», «Диаграмма», «Сообщения» и «Карта мира». Более подробная информация о программе, а также процедуры сохранения и загрузки альманахов, эфемерид, задание и сохранение программных настроек во Flash-памяти приемника приведены в документах [8, 9]. Заключение На данный момент времени ГЛОНАСС приближается к тому состоянию, которое позволит считать его полноценной навигационной системой, способной выполнять заявленные функции даже без поддержки спутников других навигационных систем. Особый интерес представляет ожидаемый в 2010 году запуск третьего поколения спутников «Глонасс-К» с заявленным сроком службы 10 лет. Появление сигналов третьего диапазона L3 позволит более чем в два раза повысить точность определения местоположения. И, наконец, меньшая масса самого спутника позволит запускать его с космодрома «Плесецк» (а не с Байконура, как было ранее) с другими разгонным блоком и ракетойносителем, что приведет к снижению стоимости выведения на орбиту примерно в два раза. Литература 1. Соловьев Ю.А. Системы спутниковой навигации. – М.: Эко-Трендз, 2000.

12

2. Глобальная спутниковая радионавигационная система ГЛОНАСС. Под ред. В.Н.Харисова, А.И.Перова, В.А.Болдина. – М.: ИПРЖР, 1988. 3. Яценков В.С. Основы спутниковой навигации. Системы GPS NAVSTAR и ГЛОНАСС. – М.: Горячая линия – Телеком, 2005. 4. Статья «Запуски ГЛОНАСС» на сайте ru.wikipedia.org. 5. Самкова Е. Обзор рынка навигационных устройств// Встраиваемые системы, №3, 2009. 6. Федеральня целевая программа «Глобальная навигационная система» от 20.08.2001// страница в Интернете http://www.aggf.ru/proekt/ zakon/doc.php?zakID=2. 7. Постановление Правительства Российской Федерации от 25 августа 2008 г. «Об оснащении транспортных, технических средств и систем аппаратурой спутниковой навигации ГЛОНАСС или ГЛОНАСС/GPS»// страница в Интернете http://www.aggf.ru/ proekt/zakon/doc.php?zakID=6. 8. ГеоС-1. Руководство по эксплуатации. Версия 1.1.// документ компании «ГеоСтар Навигация» http://www.geostarnavigation.com/fail/manuals/User_ Manual_GeoS-1_rus.pdf. 9. GeoSDemo. Руководство пользователя. Версия 1.2.// документ компании «ГеоСтар Навигация» http:// www.geostar-navigation.com/ fail/geosdemo/User_Manual_ GeoSDemo_1_2_rus.pdf. Получение технической информации, заказ образцов, поставка – e-mail: wireless.vesti@compel.ru

Вместо него потребителям предлагается новая усовершенствованная версия – Fastrack XTEND. В едином конструктивном исполнении будут выпускаться версии для GSM/ GPRS, EDGE, 3G и CDMA-сетей. Новый модем специально разработан для М2М-приложений и имеет улучшенные характеристики: пониженное энергопотребление, возможность работы от внешней батареи (поставляется отдельно) и наличие интерфейса USB. Диапазон напряжений питания расширен и лежит в пределах от 4,75 до 32 В. Разъем питания увеличен до 10 контактов, теперь здесь присутствуют новые сигналы GPIO21, GPIO25, Vref, ON-OFF и др. В новом Xtend предусмотрено подключение внешней резервной батареи питания, выполненной в виде отдельного модуля. Для улучшения параметров приемника в сетях 3G на корпусе Xtend установлено два антенных разъема – для подключения основной и дополнительной антенны (antenna diversity). В сетях GSM дополнительная антенна не требуется. Fastrack XTEND обладает уникальной возможностью аппаратного и программного расширения, что позволяет использовать его как абсолютно самостоятельное интеллектуальное устройство. В распоряжение пользовательского приложения может быть выделено до 87 MIPS вычислительной мощности 32-битного процессора ARM9, работающего с тактовой частотой от 26 до 104 МГц под управлением операционной системы реального времени OpenAT (OASIS 2.31, FW R7.4 и старше). Fastrack XTEND предоставляет намного больше возможностей, чем обычный GSM-модем. Высокая пропускная способность обеспечивается возможностью работы не только в сетях GSM, но и 3G. Диапазон применения нового продукта очень широк – от традиционного терминала для передачи данных до уникального аппаратно-программного узла, способного выполнять функции управляющего и коммуникационного устройства в различных М2М-приложениях.

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Александр Базулев (АКСИТЕХ)

Разработка систем телеметрии с применением технологии беспроводной передачи данных

О разработках и внедрении технических решений в области систем передачи телеметрических данных на базе беспроводного процессора Q2686/2687 компании Sierra Wireless рассказывает генеральный директор московской компании АКСИТЕХ.

Б

олее десяти лет специалисты нашей компании являются системными интеграторами в области автоматизации промышленных объектов повышенной опасности в коммунальном и бытовом секторах производства. Интеграция происходит по принципу «если есть готовое хорошо отработанное решение с перспективой развития – то мы его применяем, если нет – то в дело вступают наши разработки». Компанией разработаны и успешно внедрены более чем на 2000 объектах автономные комплексы телеметрии «АКТЕЛ». Необходимость разработки данного комплекса была вызвана, в первую очередь, отсутствием на рынке подобного продукта. Данный комплекс предназначен для непрерывного локального и дистанционного контроля технологических параметров объектов, осуществляющих транспортировку и распределение теплоэнергоносителей без электропитания, а именно: сбор, регистрацию и передачу электрических сигналов с датчиков (датчики температуры, давления, расхода, положения и т.д.), первичных и вторичных преобразователей на ПЭВМ «верхнего уровня» – так называемый пульт управления (или диспетчерский пункт). Комплексы «АКТЕЛ» выполняются в обычном и во взрывозащищенном корпусе (тип «взрывонепроницаемая оболочка»). Готовым решением является комплекс телеметрии «АКТЕЛ» на базе контроллеров АКСИ. За основу коммуникационного модуля была взята разработка фирмы Sierra Wireless – беспроводной процессор Q2686/2687. Он включает в себя 32-разрядный микроконтроллер, приемопередатчик GSM, множество внешних шин данных. Этот процессор является ядром разработанной системы, осуществляющим все коммуникационные функции и основную

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

логику работы с измерительными преобразователями. Примером наиболее активного внедрения таких комплексов телеметрии на сегодняшний день является участие в реализации проекта «Автоматизированная система коммерческого учета газа» ООО «МЕЖРЕГИОНГАЗ» (АСКУГ). Основная цель, которая ставится при реализации программы АСКУГ – это, прежде всего, достижение экономической эффективности проекта за счет внедрения систем оперативной передачи достоверных данных о параметрах потребления газа и состоянии технологического оборудования для обеспечения безопасной эксплуатации объектов повышенной опасности, какими и являются узлы учета газа. Таким образом, для решения поставленных задач были сформулированы следующие основные требования: • Построение территориальнораспределенной системы, позволяющей производить сбор данных от всех кате-

горий потребителей, проводить обработку данных и их передачу возможным получателям, в том числе автоматизированным системам более высокого уровня управления; • Применение современных технологий в области организации связи и передачи информации между компонентами системы; • Использование в качестве каналов передачи данных уже существующей инфраструктуры провайдеров связи (в том числе и стандарта GSM), включая техническую поддержку и сервисное сопровождение; • Возможность добавления существующих объектов, оснащенных местными АСУ, в создаваемую систему сбора и передачи данных с минимальными дополнительными расходами средств на проведение реконструкции и модернизации этих объектов; • Оптимизирование затрат на сервисное обслуживание системы за счет использования технологии удаленного

Рис. 1. Общая структура построения автоматизированной системы сбора данных

13


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 3. Структура обмена данными

Рис. 2. Структура программного взаимодействия контроллера АКСИС администрирования системы, в том числе настройки параметров измерительных комплексов и обновления программного обеспечения компонентов системы; • Соответствие промышленным стандартам передачи данных – OPC, МЭК, HART и т.п.; • Обеспечение отказоустойчивости системы с применением резервирования особо ответственных узлов системы; • Гибкость подхода к составу и функциональности оборудования автоматизации объектов полевого уровня, в зависимости от типов объектов и категорий потребителей; • Обеспечение изделий, использованных в качестве компонентов системы, длительным (не менее 5...10 лет) периодом выпуска в промышленных масштабах. Уже в самом начале реализации проекта (с 2004 г.) в качестве среды пере-

дачи данных от узлов учета расхода газа была выбрана сотовая связь стандарта GSM900/1800, как наиболее распространенная и доступная инфраструктура на территории Российской Федерации. Как правило, современные измерительные комплексы учета расхода газа оснащаются цифровыми интерфейсами передачи данных (в основном последовательными интерфейсами RS-232/422/485), некоторые из них позволяют работать с GSM-терминалами с помощью АТ-команд, что позволяет им инициативно устанавливать соединение с пультом управления (диспетчеризации). В качестве устройств приема и передачи данных нами были выбраны GSM-модемы Sierra Wireless Fastrack M1306B, которые устанавливались на приборы учета расхода газа и обеспечивали передачу данных в режиме CSD (GSM Data), а терминальное программное обеспечение, поставляемое с измерительными комплексами, позволяло считывать данные учета с однотипных приборов. Одна из трудностей, с которыми столкнулась наша компания при реализации проекта на этой стадии, заключалась в интеграции разнотипных приборов учета расхода газа в единую систему диспетче-

Рис. 4. TELNET-сервер настройки контроллера АКСИ-1

14

ризации. Как правило, с каждым типом приборов учета поставляется терминальное программное обеспечение, а вот интеграционное программное обеспечение (например, OPC-сервер) иногда вообще не предусмотрено производителем, что создает дополнительные сложности. Терминальное программное обеспечение является продуктом «в себе» – т.е. данные от прибора учета можно получить только в виде файла для последующей распечатки. Единственным эффективным решением проблемы интеграции разнотипного оборудования стала разработка универсального программного сервиса – сервера ввода/вывода, позволяющего работать с разнотипными приборами (в т.ч. и по каналам связи стандарта GSM в режиме CSD), преобразовывая собственные протоколы в единый протокол стандарта OPC. C появлением и широким распространением реализации протокола GPRS и платформы нового поколения GSMтерминалов серии Sierra Wireless Fastrack SUPREME 10/20 появилась реальная возможность решить вышеизложенную проблему более эффективным и экономичным способом, а именно – реализовать сервер ввода/вывода (т.н. «драйвер устройства») на уровне GSM-терминала, а данные передавать в едином принятом формате протокола обмена – например, в формате протокола MODBUS в реализации его под TCP/IP (рис. 2). Технические характеристики GSMтерминалов серии Sierra Wireless Fastrack SUPREME 10/20, а также развитая система программирования Sierra Wireless OpenAT® Software Suite позволили реализовать задуманное наилучшим образом! А технология DOTA® позволила оперативно вносить изменения в программное обеспечение GSMтерминалов, не выезжая непосредственно на объект телеметрии. Применение GSM-терминала серии Sierra Wireless Fastrack SUPREME 10/20 с реализованным нашей компанией специальным программным обеспечением (коммерческое название «Контроллер телеметрии АКСИС») позволило гибко интегрировать измерительные комплексы учета расхода газа различных типов

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ

Рис. 5. Контроллер телеметрии АКСИ-2 в единое информационное пространство прикладного программного обеспечения «верхнего уровня», а применение стандартного протокола обмена данными и OPC-сервера позволило исключить зависимость от конкретного производителя измерительных приборов. Одним из требований коммерческого учета газа является получение РГКархивов, формирующихся прибором учета и недоступных для передачи в стандарте OPC DA. Эта задача была решена реализацией поддержки передачи данных в формате протокола FTP. Архивы прибора (часовой, суточный и нештатных ситуаций) закачиваются в память контроллера в виде структурированных XML-файлов, которые и передаются на FTP-сервер РГК, где упаковываются в БД-формат SQL и откуда публикуются в виде отчетных документов на корпоративном WEB-портале, а также предоставляются в автоматизированные системы более высокого уровня управления предприятием (рис. 3). Таким образом, единственным требованием, которое предъявляется к центральному серверу сбора данных, является наличие статического IP-адреса, причем для организации закрытой сети может применяться технология VPNканалов, которая в настоящий момент широко доступна для реализации большинством операторов связи. Разработанное программное обеспечение позволяет работать с разнообразным внешним оборудованием, в т.ч. с приборами учета расхода газа и измерительными комплексами, выполненными на их основе. Поддерживаются более десятка приборов учета (вычислителей-корректоров) расхода газа как отечественных производителей (Эльстер Газэлектроника, Теплоком, Логика, СофтиГаз, Вымпел, Турботрон и т.д.), так и иностранных (Emerson, Elgaz, Actaris и т.д.). Выполняя требования, предъявляемые к комплексам телеметрии слож-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 6. Размещение комплекса АКТЕЛ в ШРП ных узлов учета газа (контроль дополнительных параметров газоснабжения и безопасности эксплуатации газового оборудования, таких как перепад давления на счетчике газа и фильтре, температура в помещении, сигнализация загазованности, контроль доступа и т.п.), было принято решение создать собственный контроллер телеметрии, используя в качестве платформы беспроводной процессор Sierra Wireless серии Q2686/2687. Контроллер телеметрии получил имя АКСИ-1. Он обладает следующими характеристиками: • одновременное измерение шести токовых сигналов с датчиков, имеющих стандартный токовый выход 4...20 мА, подключенных по двухпроводной и трехпроводной схемам; • ввод и обработку шести дискретных сигналов (концевые выключатели, сигнализаторы, состояние электросилового и охранного оборудования и т.п.); • ввод и обработку шести частотноимпульсных сигналов (подключаемых к дискретным входам контроллеров); • подключение внешних устройств по интерфейсу RS-232; • встроенный telnet-сервер (рис. 4), доступный как по локальному порту, так и по дистанционному подключению в режимах GPRS и CSD, позволяет в удобной визуальной форме задавать параметры связи с «верхним уровнем», вносить управляющие воздействия в параметры измерений и пр. Для сигнализации аварийных ситуаций, возникающих на объекте телеметрии (превышение пределов аварийных границ измеряемых параметров, срабатывание датчиков загазованности, охраны периметра и т.п.) контроллер позволяет установить связь с пультом управления в режиме «on-line», а также зафиксировать возникновение ситуации в собственном журнале событий, который также доступен по FTP.

Дальнейшим развитием контроллера АКСИ-1 стал контроллер АКСИ-2 (рис. 5), в котором реализована функция энергосбережения, что позволило применять комплексы телеметрии на объектах газопотребления без внешнего энергоснабжения. Контроллеры АКСИ-2 обеспечивают работу в двух режимах: 1) от внешнего стабилизированного источника питания постоянного тока 24 В (аналогично режиму работы АКСИ -1); 2) энергосберегающий режим от внешнего элемента питания (21 В, 17 А), не входящего в состав контроллеров, за счет управления питанием внутренних и внешних цепей контроллеров. Время работы контроллеров АКСИ-2 без замены внешнего элемента питания зависит от количества опросов подключаемых датчиков и числа сеансов связи с сервером сбора данных «верхнего уровня» и составляет не менее пяти лет при частоте опроса один раз в сутки. На базе контроллеров серий АКСИ в настоящий момент производятся несколько модификаций, которые в составе комплексов телеметрии АКТЕЛ позволяют реализовывать специфические задачи, такие как управление крановыми узлами, станциями электрохимической защиты и т.п. Данные комплексы, особенно в автономном и взрывозащищенном исполнении, находят широкое применение в системах обеспечения безопасной эксплуатации газораспределительных объектов, прежде всего в шкафных редуцирующих пунктах (ШРП) и пунктах учета газа (ПУГ) (рис. 6) без внешнего электроснабжения и наличия взрывобезопасного помещения для размещения оборудования. Получение технической информации, заказ образцов, поставка – e-mail: wireless.vesti@compel.ru

15


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Дмитрий Поваляев (ОАО «НИИСА»)

Дорога к «Оазису», или практические вопросы перехода на операционную систему Oasis R7

В статье подробно описываются проблемы беспроводного процессора Q268 производства Sierra Wireless (линейка Wavecom), возникающие при работе с приложением Open AT, а также методы и алгоритмы их устранения. Также рассказывается об обновлении Oasis R7.4, в котором устранена проблема «зависания» (freeze) при циклическом чтении из шины I2C.

В

2008 г. в инициативном порядке в ОАО «Научноисследовательский институт систем автоматизации» (ОАО «НИИСА») начата разработка навигационно-связных комплексов, функционирующих в составе диспетчерской системы. Носимое устройство должно обеспечивать пользователя голосовой телефонией стандарта GSM, определять собственное местоположение по сигналам GPS и передавать навигационную информацию по доступным каналам связи (GSM/GPRS, УКВ) на диспетчерский пункт. Дополнительно предусмотрен канал Bluetooth для отображения данных на КПК или ноутбуке. Мобильный комплект предназначается для установки на транспортное средство (автомобиль, корабль или катер) в исполнении для внешнего монтажа. Мобильный комплект поддерживает все функции, присущие носимому варианту (кроме голоса), но имеет двойное питание (как от бортовой сети транспортного средства, так и от встроенной АКБ). Устройство также содержит дополнительные интерфейсы для логических датчиков, каналов управления, АЦП и шины CAN. Сердцем носимого и мобильного устройства является беспроводной процессор Sierra Wireless (ранее Wavecom) Q2687 (рис. 1). В конструкции оказались задействованы практически все интерфейсы процессора, кроме параллельной шины и DAC. В частности, UART_1 используется как внешний порт для программирования и подключения внешних устройств, UART_2 – для взаимодействия с Bluetooth модулем, SPI_1 – передатчик УКВ, SPI_2 – интерфейс CAN и, наконец, I2C обеспечивает обмен информацией с GPS-приемником.

16

Изначально приложение Open AT было создано под Open AT Firmware 6.63e, OS v4.24, SDK4.27. В процессе работы выяснилось, что при циклическом опросе шины I2C с периодом 0,5 с процессор как бы останавливался, замораживался (freeze) – т.е. прекращал выполнение приложения Open AT. При этом не выполнялся ни один таймер или функция, а процессор не реагировал на AT-команды, за исключением AT+WOPEN=0 (остановка встроенного приложения). В таком состоянии процессор находился до тех пор, пока его не перезагружали либо с помощью аппаратного сброса (hard reset), либо по срабатыванию внутреннего программного таймера перезапуска (software watchdog), что происходило через несколько минут после начала состояния «freeze». После перезагрузки процессор выдавал сообщение об ошибке вида

«Except RTK ....144 a 2» (рис. 2). Описание этой ошибки в документации на OAT OSv4.24 я не нашел, однако встретил в документации на OAT OSv6.20: «144: Raised if too many items are pushed in the queue». Это можно найти в разделе «ADL Queue Service», но этот сервис в данной программе не используется. Мои попытки выяснить причину закончились на следующей мысли: возможно, всему виной искажения сигнала по шине, возникающие из-за несогласованности подключенных подтягивающих (pull-up) резисторов и результирующей емкости проводников шины I2C. Вследствие этого факта можно было наблюдать разную картину частоты «зависаний» на разных изделиях с различной топологией проводников шины I2C и, следовательно, с различной емкостью проводников шины. Картина также менялась с изменением номиналов подтягивающих резисторов, подключаемых к

Рис. 1. Беспроводной процессор Q2687

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 2. Отладка программы шине одного и того же изделия. Когда мне удалось подобрать такую комбинацию подтягивающих резисторов для каждого изделия, что чтение по шине производилось без ошибок в течение длительного времени, мы столкнулись с еще одной проблемой. Похожие симптомы «зависания» процессора наблюдались в моменты передачи голоса и данных по GSM/GPRS. Виной всему, по-видимому, были высокочастотные наводки на проводники шины. Так как локализовать причину мне не удалось, то, почитав сообщения на форуме Sierra Wireless/Wavecom на данную тему, а так же следуя рекомендациям специалистам Sierra Wireless, я все-таки решил перевести наше приложение Open AT на более новую операционную систему Open AT Firmware R7.3, OS v6.20, SDK2.20. Процесс включал в себя следующие шаги: 1. Установил новую оболочку Open AT IDE «Oasis 2.20», скачав ее с ftpсервера КОМПЭЛ (доступ открывается по запросу; кстати – очень удобно, что много необходимой информации для разработчиков доступно в любое время); 2. Перепрошил процессор Wavecom под новую операционную систему, следуя описаниям на сайте производителя; 3. Собрал на основе старых исходников проект с помощью Project Wizard (Open AT может отказаться собирать проект, если пользователь Windows в своем имени использует кириллические символы); 4. Скомпилировал проект с опцией «Wismo Target» в новой среде «Oasis 2.20», и, естественно, получил в ответ много сообщений об ошибках и несобранный бинарный файл; 5. Далее открыл документацию и последовательно начал выяснять различия в описании функций.

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

Первое с чем я столкнулся – в новой операционной системе некоторые статические данные хранятся в реестре. Ранее для определения версии hardware использовалась функция «adl _ ioGetProductType()», теперь же данные приходилось получать из реестра. Второе – в новом OAT ADL кардинально поменялся интерфейс работы c портами GPIO, поэтому эту часть программы пришлось переделать: • Определение самих GPIO: вместо «ADL _ IO _ Q2687 _ GPIO _ 21» определил порты как «ADL _ IO _ GPIO | 21»; • Структуры, описывающие GPIO: структуры типа: const adl _ ioConfig _ t Config _ EN _ WT [GPIO _ COUNT _ EN _ WT] = { {EN _ WT _ Power _ GPIO, 0, ADL _ IO _ OUTPUT, ADL _ IO _ LOW},// EN _ 3V3 _ WT – On/Off Bluetooth modulle WT-12 {EN _ WT _ Translator _ GPIO, 0, ADL _ IO _ OUTPUT, ADL _ IO _ LOW},// EN _ IO _ WT – Enable for Signal Translator FXL4TD245 {RESET _ WT _ GPIO, 0, ADL _ IO _ OUTPUT, ADL _ IO _ LOW} //RST _ WT – Reset WT-12 }; стали выглядеть так: const adl _ ioDefs _ t* Config _ EN _ WT [GPIO _ COUNT _ EN _ WT] = { EN _ WT _ Power _ GPIO | ADL _ IO _ DIR _ OUT | ADL _ IO _ LEV _ LOW, //EN _ 3V3 _ WT – On/Off Bluetooth modulle WT-12 EN _ WT _ Translator _ GPIO | ADL _ IO _ DIR _ OUT | ADL _ IO _ LEV _ LOW, //EN _ IO _ WT – Enable for Signal Translator FXL4TD245

RESET _ WT _ GPIO, 0 | ADL _ IO _ DIR _ OUT | ADL _ IO _ LEV _ LOW // RST _ WT – Reset WT-12 }; • На форуме я узнал, что GPIO44 в новой операционной системе называется GPIO 0, хотя в документации в явном виде я этого факта не нашел; • Подписка на сервисы GPIO: соответственно, изменился интерфейс функции «adl _ ioSubscribe», было: // Subscribe to the RUN _ REQ event service RUN _ REQ _ GpioEventHandle = adl _ ioEventSubscribe (RUN _ REQ _ GpioEventHandler); GpioHandle _ RUN _ REQ _ Signal = adl _ ioSubscribe ( GPIO _ COUNT _ RUN _ REQ, (adl _ ioConfig _ t *)&Config _ RUN _ REQ, ADL _ TMR _ TYPE _ 100MS, CheckRUN _ REQ _ state _ Time, RUN _ REQ _ GpioEventHandle ); стало: // Subscribe to the RUN _ REQ event service RUN _ REQ _ GpioEventHandle = adl _ ioEventSubscribe ( RUN _ REQ _ GpioEventHandler ); GpioHandle _ RUN _ REQ _ Signal = adl _ ioSubscribe ( GPIO _ COUNT _ RUN _ REQ, Config _ RUN _ REQ, ADL _ TMR _ TYPE _ 100MS, CheckRUN _ REQ _ state _ Time, RUN _ REQ _ GpioEventHandle ); • Так как информация о GPIO хранится в виде битовых полей, то в новой версии OAT ADL получение информации о GPIO производится с помощью масок, например: ((((adl _ ioDefs _ t *)Param)[RING _ Button]) & ADL _ IO _ LEV _ MSK) & ADL _ IO _ LEV _ HIGH; • Соответствующим образом изменился и интерфейс функций «adl _ ioWriteSingle» и «adl _ ioReadSingle». Третье – изменения коснулись модуля работы с шиной I2C. Основное время ушло на то, чтобы понять, что теперь в адресе slave-устройства (adl _ busI2CSettings _ t) используется реальный адрес периферийного модуля (в нашем случае – GPS-приемника LEA5H), в то время как в OAT OS v4.24 необходимо было указывать адрес со сдвигом влево на 1 бит. Запутанности также способствовало то, что при неверно указанном адресе slave-устройства функция «adl _ busRead» («adl _ busWrite») возвращает ошибку типа «ADL _ RET _ ERR _ PARAM». Получив такую ошибку, невольно начинаешь искать проблему в структурах, описывающих шину, и в других параметрах, а об адресе устройства приходит мысль в последнюю очередь.

17


НОВИНКИ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ • Изменились структуры, описывающие работу шины: в OAT OSv4.24 использовалась структура вида: /******************************/ /* I2C bus settings */ /******************************/ const adl _ busI2CSettings _ t I2C _ bus _ Config = { 0x84, // ChipAddress, 0x42<<1 ADL _ BUS _ I2C _ CLK _ STD // Clk _ Speed }; в OAT OS v6.20 взято из примера драйвера для модуля памяти по шине I2C. /******************************/ /* I2C bus settings */ /******************************/ const adl _ busI2CSettings _ t I2C _ bus _ Config = { 0x42, // ChipAddress; ADL _ BUS _ I2C _ CLK _ STD/*, // Clk _ Speed ADL _ BUS _ I2C _ ADDR _ 7 _ BITS, //Remote chip address length configuration ADL _ BUS _ I2C _ MASTER _ MODE*/ //Master or slave running mode }; Хотя в документации структура adl _ busI2CSettings _ t описана с четырьмя параметрами, в настоящей версии (как и в примере) все работает и с двумя. Вероятно, параметры ADL _ BUS _ I2C _ ADDR _ 7 _ BITS и ADL _ BUS _ I2C _ MASTER _ MODE в операционной системе как-то устанавливаются по умолчанию. • Также изменилась структура adl _ busAccess _ t: для OAT OS v4.24 adl _ busAccess _ t определялась как: static adl _ busAccess _ t I2C _ bus _ Access = { 0, 0, 0, 0, ADL _ BUS _ SIZE _ BYTE }; для OAT OS v6.20 динамически назначается только два параметра – остальные значения хранятся в реестре: static adl _ busAccess _ t I2C _ bus _ Access = { 0, 0 }; • Изменился интерфейс функции adl _ busSubscribe: для OAT OS v4.24 было: I2Chandle = adl _ busSubscribe( ADL _ BUS _ I2C, ( adl _ busSettings _ u * )&I2C _ bus _ Config); для OAT OS v6.20: I2Chandle = adl _ busSubscribe( ADL _ BUS _ I2C, 1, &I2C _ bus _ Config); Четвертое – изменения в работе с шиной SPI аналогичны изменениям для шины I2C. Так же изменилась структура adl _ busSPISettings _ t, но по

18

окончании отладки работы по шине I2C перевод работы SPI на новую ОС не составил труда. Пятое – изменения интерфейса функции обработки таймера (timer hander). В таймерах было достаточно изменить только интерфейс хандлеров. Как я понял, в OAT OS v6.20 в таймер можно передать произвольный набор данных через параметр void * Context, но в нашем приложении этого не было предусмотрено по той причине, что в OAT OS v4.24 такой возможности просто не было. Так как в остальном интерфейс работы с таймерами не изменился, то после замены описания хандлера с: void tmrHandler _ initLEA5H(u8 ID) { ..................................... } на: void tmrHandler _ initLEA5H(u8 ID, void * Context) { ..................................... } все замечательно заработало. Примечательно, что пока в проекте использовались хандлеры со старым интерфейсом, проект компилировался без ошибок, но после загрузки бинарного файла в процессор Q2687 постоянно перезагружался до тех пор, пока сама операционная система не останавливала сбойное приложение Open AT. Шестое – изменения в управлении зарядом батареи Wavecom Battery Charge Management. Для зарядки аккумуляторной батареи (АКБ) в устройстве носимого исполнения использовался встроенный механизм заряда LiIon аккумуляторных батарей. В OAT OS v4.24 для инициализации алгоритма использовалась команда: a d l _ a t C m d C r e a t e ( «AT+WBCM=3,2», FALSE, ( adl _ atRspHandler _ t ) NULL, NULL );// Set the unsolicited indication «ON» в ОAT OS v6.20 режим «2» для команды AT+WBCM=3 отсутствует, следовательно пришлось заменить на: a d l _ a t C m d C r e a t e ( «AT+WBCM=3,1», FALSE, ( adl _ atRspHandler _ t ) NULL, NULL );// Set the unsolicited indication «ON» Седьмое – индикатор WIND: 3. В нашем приложении Open AT была предусмотрена возможность отключать некоторые аппаратные ресурсы процессора, например – клавиатуру, для того, чтобы использовать эти выводы (keyboard) в качестве GPIO. Эти процедуры производились только после получения операционной системой процессора сообщения о готовности обрабатывать АТкоманды, т.е. +WIND: 3 («the product is

ready to process AT commands»). Однако в ОAT OS v6.20 индикатор +WIND: 3 выдавался операционной системой еще до того момента, как наше приложение OpenAT стартовало. Поэтому при старте приложения пришлось отключать клавиатуру и управление светодиодом индикации (FlashLED) непосредственно в функции adl _ main. Восьмое – команды аудио-тракта (Audio Commands). В новой операционной системе появилась возможность задавать уровни громкости сигнала динамика либо в относительных единицах, либо в децибелах AT+WBHW=8(,1), соответственно пришлось незначительно переделывать интерфейс работы с аудио-интерфейсом в носимом варианте устройства. Напоследок отмечу, что в проекте используются следующие сервисы Open AT: • AT Commands Service; • Timers; • Memory Service; • Debug Traces; • Flash; • FCM Service; • GPIO Service; • Bus Service; • SMS Service; • Call Service; • WIP GPRS Service; • AT/FCM IO Ports Service; • ADL Audio Service. а также: • Wavecom Battery Charge Management; • Audio Commands. Проект отлаживался в среде Microsoft Visual Studio 2003. Процессор Q2687H: Hardware Version 4.20. R73_00gg.Q2687H 2087432 121208 15:34 +WOPEN: 2, «AT v06.20», «AT v06.20» Заключение Уже разобравшись с большинством проблем возникших при переходе от OAT OS v4.24 к OAT OS v6.20, на сайте Sierra Wireless я обнаружил, что вышло обновление Oasis R7.4. В описании к нему было сообщено, что в версии R7.4 устранена проблема «зависания» (freeze) при циклическом чтении из шины I2C. Проблем при переходе от R7.3 к R7.4 не возникло. Уже более месяца наше программно обновленное мобильное устройство в режиме тестовой эксплуатации без проблем работает с GPS-приемником по шине I2C.

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

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Олег Пушкарев (КОМПЭЛ)

Прибор для оценки дальности связи в сетях ZigBee

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

К

аждый производитель ZigBeeчипов или радиомодулей предлагает разнообразные средства разработки, позволяющие быстро развернуть ZigBee-сеть или попробовать передачу данных в режиме «точка-точка». Подобные отладочные средства оказывают огромную помощь инженерам на этапе освоения беспроводной технологии, однако они недостаточно удобны, если необходимо производить измерения на реальном объекте. Платы от производителей обычно либо требуют подключения компьютера для отображения результатов измерений, либо имеют значительный размер, что затрудняет их размещение в той точке, где нужно производить измерения (рис. 1). Для облегчения процесса желательно иметь автономный компактный прибор, который позволяет измерять уровень сигнала в ZigBee-сети с его индикацией в графическом и числовом виде. Прототип такого прибора был разработан на базе модулей XBee (Series 2), которые содержат полный стек протоколов ZigBee Pro и позволяют строить сеть с полной mesh-топологией, т.е. такую, где любой узел может передавать данные любому другому, в том числе и с помощью ретрансляций через ряд промежуточных узлов. Радиомодули XBee со встроенным ZigBee-стеком очень удобны для построения беспроводных сетей в условиях ограниченных временных и инженерных ресурсов. Радиомодуль XBee позволяет организовать передачу данных в сетях со сложной топологией без долгого процесса изучения ZigBee-технологии. Простой набор команд, удобный интерфейс управления и низкая цена обеспечили радиомодулям XBee признание во всем мире. XBee-модули позволяют

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

оценивать силу принимаемого сигнала (RSSI), а бесплатная программа X-CTU умеет отображать эти показания в удобном графическом виде на ПК. Однако не на каждый промышленный объект удобно ходить с ноутбуком. Отладочные комплекты для XBee-модулей включают в себя небольшие отладочные платы, на которых уровень принимаемого сигнала индицируется тремя светодиодами (рис. 2). Это позволяет использовать их и без подключенного ПК, хотя такая грубая оценка уровня принимаемого сигнала во многих случаях недостаточна. Для нашего измерительного прибора потребуется как минимум два модуля XBee, один из которых будет передавать сообщения, а другой – получать их и измерять силу принимаемого сиг-

нала. Назовем их условно «передатчик» и «приемник». Передатчик XBee модули работают в сети ZigBee, где, как известно, на момент формирования сети обязательно должен быть координатор. Поэтому в сети ZigBee наш передатчик будет координатором, т.е. для него необходимо взять модуль с соответствующей прошивкой (ZIGBEE COORDINATOR API). В XBee-модуль можно свободно загружать любую прошивку, предназначенную для данного типа модуля, поэтому с помощью программы X-CTU модуль с прошивкой роутера легко превратить в координатор и наоборот. Для того, чтобы упростить передатчик и не использовать никаких дополнительных микросхем, мы воспользуемся встроенной в модуль XBee

Рис. 1. Проведение испытания дальности с помощью традиционных отладочных средств

19


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Индикатор RSSI

Рис. 2. Измерения дальности связи с помощью отладочных плат возможностью автоматически отправлять данные о сигналах на цифровых или аналоговых входах (I/O Sampling). Т.е. с помощью API-команд управления мы настраиваем модуль на отсылку широковещательного (т.е. предназначенного для всех узлов в ZigBee-сети) сообщения один раз в секунду. Конкретные данные, которые будет отправлять модуль, для данного прибора не играют никакой роли – нам достаточно принять любой пакет, чтобы измерить силу сигнала в точке размещения приемника. Согласно спецификации ZigBee Pro не рекомендуется отправлять широковещательные сообщения чаще одного раза в восемь секунд. Однако здесь мы проигнорируем это правило, т.к., с одной стороны, в нашей сети только два

устройства (передатчик-координатор и приемник-роутер), и «широковещательного шторма» гарантированно не будет; с другой – при строгом следовании рекомендациям обновления показаний будут происходить очень редко (каждые 8 секунд), что существенно ухудшает удобство пользования прибором. Итак, как превратить находящийся под рукой модуль XBee в передатчик для нашего прибора? 1. Для описываемого здесь передатчика подойдет только модуль серии 2, т.е. модуль, имеющий в своем названии латинскую букву «B» или «Z» после «XB24xxxxxx» («XBP24- xxxxxx»), например XB24-BWIT-004, XB24-BSIT-004, XB24-Z7CIT-004, XBP24-BCIT-004, XBP24-BWIT-004 и т.д. Все эти модули

отличаются только типами антенн, выходной мощностью и разными версиями прошивок. Тип антенны (проводная, чип или на разъеме SMA), разумеется, будет влиять на дальность связи, поэтому выбирайте именно тот вариант антенны, которую планируете впоследствии устанавливать в разрабатываемый прибор. 2. Если мы хотим измерять дальность действия маломощных модулей, то для передатчика следует взять модуль, начинающийся с «XB24-xxxxxx», а для оценки дальности мощных модулей следует взять модуль «XBP24-xxxxxx». 3. Если прошивка (firmware) модуля не является «ZIGBEE COORDINATOR API», то нужно загрузить в него эту прошивку с помощью программы X-CTU. Для этого модуль нужно подключить к ПК с помощью переходной платы XBIB-R или XBIB-U. 4. Включаем модуль, дожидаемся начала мигания светодиода «Статус». Эта индикация означает, что координатор стартовал и готов подключать другие устройства к своей сети. 5. С помощью программы X-CTU (закладка MODEM CONFIGURATION) установим значения DH=0 и DL=FFFF (папка Adressing). Данный адрес зарезервирован для рассылки широковещательных сообщений. 6. Выбираем в папке I/O settings значение «2-ADC» для порта D1. Таким образом, мы определяем, какие значения будет отправлять наш передатчик (здесь – напряжение на порту D1 модуля). Модуль отправляет сэмплы только в том случае, если для этих целей назначен хотя бы один из доступных портов. Для нашего устройства абсолютно неважно, что этот порт в реальности никуда не подключен – нам необходим только факт отправки пакета по радиоканалу. Его содержимое мы анализировать не будем.

Рис. 3. Фото и схема передатчика

20

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 4. Фото и схема приемника 7. Устанавливаем частоту отправки пакетов с сэмплами, задав параметр IR (папка I/O Sampling) равный 3E8 (1000 Dec). Это число миллисекунд в шестнадцатеричном виде. Наш передатчик будет отсылать сообщения один раз в секунду. 8. Сохранить наши настройки можно, нажав на кнопку «Write». Теперь всегда после включения питания наш передатчик-координатор будет один раз в секунду рассылать широковещательное сообщение с информацией о напряжении на порту D1. Именно его и будет принимать приемник и измерять уровень сигнала RSSI. Схема передатчика очень проста и приведена на рис. 3. Светодиод HL1 индицирует текущий статус модуля (Associated Indicator). Питается передатчик от двух щелочных батарей типоразмера АА. Передатчик нужно поместить в подходящий корпус и разместить в месте предполагаемой эксплуатации – около электросчетчика, в водопроводной нише, на автомобиле и т.п. Приемник При приеме каждого пакета модуль XBee может выдавать значение RSSI двумя способами – либо через порт P0 в виде ШИМ-сигнала, либо в виде цифрового значения, доступного по АТкоманде DB. При использовании порта P0 к нему через простейшую RC-цепочку можно подключить соответствующим образом откалиброванный стрелочный прибор для измерения RSSI в виде напряжения. На переходных платах из отладочного набора уровень напряжения c выхода порта P0 с помощью компараторов сравнивается с заранее заданными значениями, что и приводит к зажиганию

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

трех светодиодов индикатора RSSI. Более точное значение RSSI можно получить с помощью команды ATDB, в ответ на которую XBee-модуль возвращает уровень RSSI для последнего принятого пакета в единицах -dBm. Например, если возвращенное значение 0x50, то это означает, что последний пакет был принят с уровнем -80 dBm. Следует помнить, что если пакет ретранслировался несколько раз на пути от источника к приемнику, то модуль показывает уровень сигнала только на последнем участке маршрута. Приемник имеет более сложную схему по сравнению с передатчиком (рис. 4). Взаимодействием с модулем и отображением информации занимается микроконтроллер PIC16F88. Для отображения уровня сигнала используется текстовый индикатор WINSTAR WH0802A-TMICT. Программа для приемника написана на ассемблере и кроме отображения уровня RSSI имеет множество других полезных функций: просмотр и изменение настроек XBee-модуля; поиск, отображение и сохранение в энергонезависимой памяти данных об узлах ZigBee-сети. В статье мы рассмотрим лишь тот функционал, который отвечает за прием пакетов и отображение RSSI. При отображении уровня принимаемого сигнала приемник работает следующим образом (рис. 5): 1. После включения инициализируется периферия микроконтроллера, на ЖКИ-индикатор выводится первый пункт меню управления и ожидается реакция пользователя. При выборе меню «Прием пакетов» приемник переходит в режим ожидания входящих сообщений. 2. При включении передатчика на ЖКИ-индикатор выводится значение RSSI в dBm и шкала силы сигнала.

Рис. 5. Индикация в процессе измерения 3. Если приемник в течение некоторого времени не принимает пакетов (вне зоны действия), то вместо шкалы силы сигнала выводятся бегущие символы. Прием очередного пакета восстанавливает индикацию п.2. 4. Кнопки SW1...SW3 используются для навигации по меню прибора. Данное оборудование использовалось при проведении измерений в различных помещениях и оказалось очень удобным для быстрой оценки зоны покрытия на разных объектах (рис. 6). В программе дальнейшего совершенствования прибора – введение функции накопления результатов измерения, что позволит определять стабильность радиолинка между фиксированными точками на протяжении длительного времени (часы, дни, недели). Однако такая модификация потребует сетевых источ-

21


ОБЗОРЫ

БЕСПРОВОДНЫЕ ТЕХНОЛОГИИ

Рис. 6. Проведение измерений в цеху ников питания, что, конечно же, уменьшит мобильность устройства. Еще одно направление совершенствования – введение режима измерения реальной пропускной способности, когда приемник будет измерять пропускную способность сети при передаче сообщения определенной длины на удаленный узел. Заключение XBee-модули предоставляют разработчику полный набор необходимых служебных возможностей, с помощью которых можно контролировать качество ZigBee-

22

сети как на этапе проектирования, так и в процессе реальной установки оборудования в полевых условиях. Описанный в статье несложный прибор облегчает выбор требуемой мощности XBee-модулей, позволяет подобрать оптимальный тип антенн и проанализировать точки установки оборудования на реальных объектах, исходя из критерия максимального уровня принимаемого сигнала.

в условиях городской квартиры. Новости электроники №5/2006. [2] Сергей Гринченко. Проверка дальности связи ZigBee модулей от Digi в условиях загородного коттеджа. Беспроводные технологии, №2/2009.

Литература [1] Олег Пушкарев. Проверка дальности связи ZigBee-модулей MaxStream

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

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ

МИКРОКОНТРОЛЛЕРЫ

Андрей Самоделов

Новые микроконтроллеры STM32W для беспроводных приложений

В настоящее время многие известные компании, занимающиеся разработкой и производством микроконтроллеров, вышли на рынок с решениями, предназначенными для создания беспроводных сетей на базе однокристальных устройств типа «система на кристалле» (SoC). К таким микроконтроллерам можно отнести CC430F61xx/CC430F513x от Texas Instruments, ATmega128RFA1 от Atmel и STM32W108 от STMicroelectronics. В данной статье будут рассмотрены микроконтроллеры STM32W108 от STMicroelectronics и их возможности по увеличению надежности беспроводных систем.

М

икроконтроллеры STM32W108 типа «система на кристалле» (SoC), созданные на базе 32-разрядного ядра ARM Cortex-M3, имеют встроенную flash-память (объемом 128 кбайт) и ОЗУ (объемом 8 кбайт), а также могут работать на частоте 6, 12 или 24 МГц. Поддерживаемый набор инструкций Thumb-2 обеспечивает превосходную плотность кода. Микросхемы имеют четыре тактовых генератора и систему переключения между ними при пропадании одной из тактовых частот. Радиочастотный модуль работает на частоте 2,4 ГГц при скорости обмена данными до 500 кбит/с и поддерживает стандарт IEEE 802.15.4. Аппаратный MAC интерфейс повышает экономичность и быстродействие системы. Выходная мощность передатчика составляет 3 дБм (в нормальном режиме) и может быть программно увеличена до 7 дБм. При необходимости получения еще большей выходной мощности возможно подключение внешнего ВЧ-усилителя. Чувствительность приемника в нормальном режиме составляет -99 дБм и конфигурируется до -100 дБм (при 1% ошибок приема пакетов, размером 20 байт). Для повышения безопасности передачи данных поддерживается шифрование с помощью аппаратного криптографического ускорителя AES128. Набор периферийных модулей STM32W108 включает в себя: • 16-канальный 12-разрядный АЦП; • Контроллер последовательного интерфейса USCI, работающий в режимах UART/SPI /TWI; • Три 16-разрядных таймера, 12 каналов сравнения/захвата/ШИМ;

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

• 24 конфигурируемых линии ввода/вывода общего назначения с триггерами Шмидта на входе; • Гибкий настраиваемый контроллер вложенных векторных прерываний. Напряжение питания микросхем составляет 2,1...3,6 В при потребляемом токе: • 27 мA – режим приема; • 31 мA – режим передачи (выходная мощность 3 дБм); • В состоянии глубокого сна (ОЗУ и регистры GPIO в режиме хранения) – 400 нА/800 нА с включенным/выключенным системным таймером; Микросхемы выпускаются в 48-выводном корпусе QFN, размером 7х7 мм. Основными областями применения STM32W108 являются: • Охранные системы и системы сигнализации; • Устройства управления зданиями и сооружениями;

Рассмотрим подробнее основные функциональные блоки STM32W108. Структурная схема микроконтроллера STM32W108 показана на рис. 1. Радиочастотный (РЧ) модуль Радиоприемник STM32W108 выполнен по схеме супергетеродинного приемника с низкой промежуточной частотой (ПЧ). Его архитектура оптимизирована для сосуществования с другими устройствами, работающими в диапазоне частот 2,4 ГГц (WIFI и Bluetooth) при низкой потребляемой мощности. Для уменьшения чувствительности к помехам приемник использует различия в прохождении полезного сигнала и помехи. После усиления по высокой частоте (ВЧ) сигнал преобразуется вниз по частоте в смесителе с подавлением побочных каналов приема, фильтруется и переводится в цифровую форму быстродействующим аналого-цифровым преобразователем (АЦП). Радиопередатчик использует эффективную архитектуру, в которой поток данных непосредственно модулирует частоту перестраиваемого ВЧ-генерато-

Микроконтроллеры STM32W108 типа «система на кристалле» (SoC), созданные на базе 32-разрядного ядра ARM Cortex-M3, имеют встроенную flash-память (объемом 128 кбайт) и ОЗУ (объемом 8 кбайт), а также могут работать на частоте 6, 12 или 24 МГц. • Интеллектуальные энергосистемы; • Беспроводные датчики для сетей ZigBee Pro; • Изделия в стандарте RF4CE и системы дистанционного управления; • Реализация протокола 6LoWPAN и пользовательских протоколов; • Системы домашней автоматики и управления.

ра (VCO). Встроенный усилитель мощности (PA) обеспечивает необходимый уровень выходного сигнала. Цифровая подсистема управляет трактом передачи (Tx) и калибровкой выходной мощности. При работе STM32W108 с внешним усилителем мощности (PA) для управления внешним ВЧ коммутатором используются сигналы TX_ACTIVE или nTX_ACTIVE.

23


ОБЗОРЫ

МИКРОКОНТРОЛЛЕРЫ

Рис. 1. Структурная схема микроконтроллера STM32W108 Встроенный VCO на частоту 4,8 ГГц и петлевой фильтр минимизируют количество внешних компонентов. Для работы внутренней системы фазовой автоподстройки частоты (PLL) необходим только кварцевый резонатор на частоту 24 МГц. В режимах приема (Rx) и передачи (Tx) интерфейс доступа к среде (MAC) для хранения пакетов использует внутреннюю RAM. Модуль MAC обеспечивает аппаратную фильтрацию пакетов согласно спецификации IEEE 802.15.4. Он контролирует точное соблюдение временных характеристик протокола, уменьшая ошибки синхронизации, обусловленные программным стеком, и временные затраты на реализацию протокола передачи данных, и обеспечивает синхронизацию для алгоритма IEEE 802.15.4 CSMA-CA. Цифровая часть приемника использует синхронный детектор, чтобы генерировать символы для аппаратного блока MAC. Кроме того, цифровой приемник содержит подпрограммы калибровки аналоговой части и управления коэффициентом усиления во всем тракте приема. Встроенная память Flash-память STM32W108 состоит из 128 кбайт основной памяти, 2048 байт системной области и 512 байт для хранения пользовательских констант. Гарантируется до 1000 циклов записи/ стирания при времени хранения информации свыше 100 лет. Программирование flash-памяти можно осуществить либо через интерфейс Serial Wire/JTAG с помощью сервисной утилиты, основанной на коде, размещаемом в RAM, либо посредством

24

начального загрузчика с помощью специального программного обеспечения для загрузки «на лету» или для последовательной загрузки. Простейший последовательный загрузчик программируется как часть FIB при производстве микросхемы. Область статической памяти с произвольным доступом (RAM) STM32W108 имеет объем 8 кбайт. Хотя ядро ARM® Cortex-M3 обеспечивает побитовый доступ к этой области памяти, стандартная конфигурация модуля защиты памяти (MPU) не позволяет использовать эту функцию. Область RAM физически подключена к расширенной высокоскоростной шине (AHB System bus) и поэтому доступна как ядру ARM® Cortex-M3, так и отладчику. Ее можно использовать как для хранения кода, так и для хранения данных. Стандартная конфигурация MPU не позволяет выполнять код из RAM, но для специальных целей, таких как программирование основной flash-памяти, MPU можно отключить. Со стороны шины обмена RAM представляет собой 32-разрядную память с нулевым временем выборки данных. В режиме максимальной тактовой частоты CPU для доступа к RAM требуется два такта ожидания. Это обеспечивается аппаратно, прозрачно для пользовательских приложений, и не требует дополнительного конфигурирования. Некоторые периферийные модули (радио-тракт (802.15.4 MAC), АЦП общего применения, контроллеры последовательного интерфейса (SCI)) оборудованы контроллерами прямого доступа к памяти (DMA), позволяющими им автономно обмениваться данными с RAM. Для SCI DMA является полностью дуп-

лексным, так что для RAM одновременно могут потребоваться операции чтения и записи. В состав STM32W108 входит арбитр DMA, который обеспечивает порядок доступа как к микропроцессору, так и к периферийным модулям посредством схемы фиксированных приоритетов в соответствии с требованиями к скорости обмена для каждого потребителя. Для защиты памяти в STM32W108 реализовано два механизма: 1. С помощью блока защиты памяти (MPU) ядра ARM® Cortex-M3. Блок MPU можно использовать для защиты любой области памяти. Конфигурация MPU обычно управляется программным обеспечением. 2. С помощью модуля защиты RAM, который обеспечивает разбиение RAM на блоки размером 32 байта, каждый из которых можно отметить как защищенный от записи. В пользовательском режиме попытка записи в защищенный блок RAM приведет к возникновению ошибки шины. В системном режиме запись разрешена в любое время, а чтение разрешено в обоих режимах. Основной целью мелкой сегментации в модуле защиты RAM является сообщение об ошибочных попытках записи в системные области памяти. Защита RAM конфигурируется с использованием группы регистров, которые являются битовым массивом. Каждый бит массива представляет 32-битный блок RAM. При установке бита блок будет защищен от записи. Механизм защиты RAM также доступен для контроллеров DMA периферийных модулей. При попытке записи в защищенную область RAM через DMA генерируется управляющее прерывание. Для возможности отладки запоминается сбойный адрес и вид периферийного модуля, вызвавшего сбой. Блок защиты памяти (MPU) управляет правами доступа и характеристиками до восьми адресных областей, каждая из которых может быть разделена на восемь подобластей. При обнаружении несанкционированного доступа к данным MPU сохраняет информацию о типе доступа, адрес обращения и местоположение вызывавшего фрагмента кода. Это упрощает отладку программного обеспечения и увеличивает надежность создаваемых устройств. Детальное описание блока MPU содержится в документе «ARM® Cortex-M3 Technical Reference Manual» (DDI 0337A). Тактовые генераторы В состав STM32W108 входят четыре тактовых генератора: 1. Высокочастотный внутренний RCгенератор (OSCHF), используемый как системный источник тактовой частоты (по умолчанию) при подаче напряжения

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ питания. Номинальная частота после системного сброса составляет 12 МГц. Большинство периферий, исключая радио-модуль, может полнофункционально работать от OSCHF. Поскольку шаг частоты OSCHF составляет 0,5 МГц, а для его калибровки используется ВЧ кварцевый резонатор, точность установки частоты OSCHF составляет ±250 кГц ±40 ppm, что может оказаться недостаточным для нормальной работы UART и АЦП. 2. Высокочастотный кварцевый генератор (OSC24M), для работы которого требуется внешний резонатор на частоту 24 МГц с точностью ±40 ppm. С целью минимизации потребляемой мощности кварцевый генератор имеет программируемую схему смещения. Вся периферия, включая радиомодуль, может полнофункционально работать от OSC24M. При выходе из строя кварцевого резонатора на частоту 24 МГц механизм аппаратной защиты заставляет систему перейти обратно к ВЧ RCгенератору, как к главному источнику тактовой частоты, и в контроллер прерываний поступает немаскируемое прерывание. Для нормальной работы прикладное ПО должно различать источники синхронизации: периферии – OSCHF или OSC24M, поскольку тактовые частоты в каждом случае могут различаться. 3. Низкочастотный внутренний RCгенератор (OSCRC) выполняет функцию внутреннего источника меток времени. Номинальная частота после выхода из системного сброса составляет 10 кГц и калибруется программным обеспечением от ST. После настройки OSCRC на частоту 10 кГц калибруется дробный делитель на N, чтобы получить образцовый тактовый сигнал CLK1K с частотой 1 кГц. 4. Низкочастотный кварцевый генератор (OSC32K) на частоту 32,768 кГц (OSC32K) обеспечивает дополнительные метки времени для внутренних таймеров и разработан для использования с внешним часовым кварцевым резонатором. Прерывания В систему прерываний STM32W108 входят: • Стандартный контроллер вложенных векторных прерываний (NVIC) ядра ARM® Cortex-M3, который обеспечивает обработку прерываний верхнего уровня; • Диспетчер событий (EM), который обеспечивает обработку прерываний второго уровня. Модули NVIC и EM образуют простейшую иерархическую структуру для обработки прерываний. Все прерывания второго уровня от EM передаются на верхний уровень прерываний в NVIC. Такая двухуровневая иерархия позво-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

МИКРОКОНТРОЛЛЕРЫ ляет осуществлять как прецизионное управление источниками прерываний, так и грубое управление всеми периферийными устройствами, позволяя этим устройствам иметь собственные векторы прерываний. В действительности периферийные прерывания верхнего уровня используются только для того, чтобы разрешить или запретить прерывания для всей периферии. Прерывания второго уровня возникают от аппаратных источников и поэтому являются главными для приложений, использующих прерывания. Контроллер вложенных векторных прерываний (NVIC) Контроллер вложенных векторных прерываний (NVIC) за счет тесной интеграции с ядром ARM® Cortex-M3 обеспечивает исключительно низкое время ожидания и обработки прерываний и эффективную обработку следующих поступающих прерываний. Кроме того NVIC (для создания цепочки прерываний) содержит информацию о стековых (каскадных) прерываниях. Контроллер NVIC ядра ARM® Cortex-M3 содержит десять стандартных прерываний, которые соответствуют работе микросхемы CPU и операциям управления. Кроме десяти стандартных прерываний имеется 17 индивидуальных векторизованных периферийных прерываний, специфичных для STM32W108. Модуль NVIC задает список исключительных ситуаций (исключений). В этот список входят как прерывания от периферии, так и более специализированные события, такие как ошибки и сброс CPU. В NVIC ядра ARM® Cortex-M3 событие сброса CPU рассматривается как исключение с наивысшим приоритетом. Положение каждой исключительной ситуации является важным, поскольку оно задает аппаратный приоритет исключений и непосредственно преобразуется в 32-разрядный адрес, который загружается в программный счетчик. Исключение с приоритетом от 0 (указатель стека) по 15 (SysTick) являются частью стандартного NVIC-ядра ARM® Cortex-M3, в то время как исключения с приоритетом от 16 (Таймер 1) по 32 (Отладчик) являются прерываниями от периферии, специфичными для STM32W108. Приоритет большинства прерываний можно задавать программным путем. Исключения Reset, NMI и Hard Fault в указанном порядке всегда имеют наивысший приоритет и не конфигурируются программно. Для всех других исключений можно назначить пятиразрядный номер приоритета, при этом низшему значению соответствует высший приоритет. Если некоторые имеют одинаковый программно-сконфигуриро-

ванный приоритет, то NVIC использует приоритеты, заданные аппаратно и совпадающие с положением исключения в таблице исключений. Например, если одновременно выдаются запросы от IRQA и IRQB, и они имеют одинаковый, заданный программно приоритет, то NVIC обрабатывает IRQA первым, поскольку он имеет более высокий аппаратный приоритет (28) чем IRQB (29). Прерываниями верхнего уровня управляют пять регистров NVIC ядра ARM® Cortex-M3: INT_CFGSET, INT_CFGCLR, INT_PENDSET, INT_ PENDCLR и INT_ACTIVE. Запись «0» в любой бит любого из этих пяти регистров не приводит ни к каким действиям. Запись «1» в бит INT_CFGSET разрешает, а запись «1» в бит INT_CFGCLR запрещает прерывание верхнего уровня. Запись «1» в бит INT_PENDSET запускает, а запись «1» в бит INT_PENDCLR очищает прерывание верхнего уровня. INT_ACTIVE не может быть модифицирован и используется для указания активного прерывания. Прерывания можно поставить в очередь и очистить в любое время, но никакое прерывание из очереди не будет обработано до тех пор, пока не будет установлена соответствующая маска (в регистре INT_CFGSET), которая разрешает прохождение прерывания. Если установлены бит INT_CFGSET и соответствующий бит INT_PENDSET, то прерывание распространится и будет обработано. Если бит INT_CFGSET будет установлен после бита INT_PENDSET, то прерывание также распространится и будет обработано. За подробной информацией об исключениях NVIC и Cortex-M3 можно обратиться к документам «ARM® CortexM3 Technical Reference Manual» и «ARM ARMv7-M Architecture Reference Manual». Немаскируемые прерывания (NMI) Немаскируемые прерывания представляют собой особый случай. Несмотря на то, что такое прерывание является одним из десяти стандартных прерываний NVIC ядра ARM® Cortex-M3, оно обрабатывается диспетчером событий подобно периферийному прерыванию. Немаскируемое прерывание имеет два источника прерываний второго уровня: 1. Выход из строя кварцевого резонатора на частоту 24 МГц. Если главный тактовый генератор STM32W108 работает от внешнего кварцевого резонатора на частоту 24 МГц, и резонатор выходит из строя, STM32W108 обнаруживает такой сбой и автоматически переключается на внутренний RC-генератор с частотой 12 МГц. При обнаружении этого сбоя и переключения генераторов STM32W108 генерирует прерывание

25


ОБЗОРЫ

МИКРОКОНТРОЛЛЕРЫ второго уровня, которое генерирует немаскируемое прерывание. 2. Состояние ожидания сторожевого таймера «watchdog». Если сторожевой таймер STM32W108 активен, и счетчик сторожевого таймера не сбрасывается за время, превышающее 1,792 с, то возникает прерывание второго уровня, которое генерирует немаскируемое прерывание. Внешние прерывания STM32W108 может использовать до четырех внешних источников прерываний (IRQA, IRQB, IRQC и IRQD), каждый из которых имеет собственный вектор прерывания верхнего уровня в NVIC. Поскольку источники этих прерываний присоединены к стандартным выводам GPIO, выводы внешних прерываний могут одновременно использоваться и периферийными устройствами или как выходы. Режим аналогового ввода является единственной конфигурацией GPIO, которая не совместима с использованием вывода в качестве источника внешнего прерывания. Внешние прерывания имеют индивидуальные настройки срабатывания и фильтрации, устанавливаемые с использованием битовых полей регистров управления. Имеются следующие условия генерации внешних прерываний: 0 – запрещено; 1 – по нарастающему фронту; 2 – по спадающему фронту; 3 – по обоим фронтам; 4 – по присутствию высокого статического уровня; 5 – по присутствию низкого статического уровня. Минимальное время, необходимое для захвата немаскируемого внешнего прерывания, как в режиме срабатывания по фронту, так и в режиме срабатывания по статическому уровню, составляет 80 нс. При включенном цифровом фильтре минимальное время реакции увеличивается до 450 нс. Регистр флагов прерываний второго уровня указывает на ожидающие прерывания. Если прерывание обрабатывается в режиме срабатывания по статическому уровню, флаг прерывания устанавливается немедленно после очистки, если вход прерывания все еще находится в активном состоянии. Два из четырех внешних прерываний, IRQA и IRQB, имеют фиксированную привязку к выводам микроконтроллера. Два другие внешние прерывания, IRQC и IRQD, могут использовать любые выводы GPIO, которые задаются в специальных регистрах. Диспетчер событий В то время как стандартный контроллер вложенных векторных прерываний ядра ARM® Cortex-M3 обеспечивает обработку прерываний в CPU,

26

диспетчер событий обеспечивает обработку прерываний второго уровня. В диспетчер событий поступает большое количество разнообразных аппаратных прерываний от периферии, которые затем преобразуются в небольшую группу прерываний в NVIC. Все прерывания второго уровня от периферийных устройств объединяются по «ИЛИ» в одно прерывание в NVIC. Периферийные модули Контроллер последовательного интерфейса SCI Встроенный контроллер последовательного интерфейса имеет два канала обмена данными SC1 и SC2. Канал SC1 можно сконфигурировать для операций SPI (ведущий или ведомый), TWI (только ведущий) или UART, а канал SC2 – для операций SPI или TWI. Аналого-цифровой преобразователь (АЦП) АЦП STM32W108 является дельтасигма преобразователем первого порядка со следующими возможностями: • Разрешение до 12 бит; • Время преобразования 5,33 мкс (188 кГц); • Дифференциальное и асимметричное преобразование от шести внешних и четырех внутренних источников; • Два диапазона входного напряжения (в дифференциальном режиме): от -VREF до +VREF и от –VDD_PADS до +VDD_PADS; • Выбор внутреннего или внешнего источника опорного напряжения VREF: внутренний VREF (может быть доступен для внешней схемы); • Цифровая подстройка напряжения смещения и коэффициента усиления; • Специализированный канал DMA с режимами однократного или непрерывного преобразования и записью результатов измерения непосредственно в RAM, минуя CPU. Поскольку модуль АЦП поддерживает работу, как в несимметричном, так и в дифференциальном режиме, его входы всегда работают в дифференциальном режиме. Несимметричное преобразование выполняется при подключении одного из дифференциальных входов к источнику с напряжением VREF/2, в то время как полностью дифференциальные операции используют оба входа. Таймеры В дополнение к двум таймерам общего назначения STM32W108 содержит: сторожевой таймер для защиты программного обеспечения от сбоев и остановки CPU; 32-разрядный таймер режима ожидания, используемый для хранения системного времени и вывода микропроцессора из спящего режима через заданный промежуток времени, и

стандартный таймер системных событий ARM® в контроллере прерываний. Источники питания STM32W108 содержит три системы источников питания. Всегда включенный высоковольтный источник питания обеспечивает работу GPIO и функционирование критических блоков микросхемы. Остальные блоки микросхемы питаются от низковольтных стабилизаторов. Низковольтные источники питания можно отключить при переходе в спящий режим, что дополнительно уменьшает энергопотребление. Внутренние стабилизаторы обеспечивают получение напряжений питания 1,25 В и 1,8 В из нерегулируемого напряжения питания микросхемы. Выход стабилизатора напряжения 1,8 В имеет внешний фильтр и может использоваться внешними аналоговыми блоками, RAM и flash-памятью. Выход стабилизатора напряжения 1,25 В имеет внешний фильтр и используется для питания ядра микропроцессора. Режимы пониженного энергопотребления STM32W108 имеет сверхнизкое энергопотребление в режиме глубокого сна с возможностью выбора способа тактирования. Таймер выхода из состояния бездействия можно тактировать или от внешнего кварцевого резонатора на частоту 32,768 кГц, или от сигнала частотой 1 кГц, полученного делением частоты 10 кГц от внутреннего RC-генератора. Для режима с наименьшим энергопотреблением все тактовые генераторы можно выключить, т.к. микросхема будет пробуждаться только внешними событиями с выводов GPIO. STM32W108 обладает быстрым временем пробуждения (типичное значение – 100 мкс) из состояния глубокого сна до момента выполнения первой инструкции ARM® Cortex-M3. Средства разработки и отладки Для создания приложений на базе STM32W108 можно использовать широкий набор сред разработки и отладки, а также операционных систем реального времени (OS и RTOS), предназначенных для работы с ARM-микроконтроллерами, и предлагаемых многими ведущими производителями программного и аппаратного обеспечения. Для создания прикладных программ для STM32W108 можно использовать интегрированную среду разработки Keil RealView Microcontroller Development Kit (MDK) совместно с семейством USB-JTAG адаптеров Keil ULINK или IAR Embedded Workbench for ARM совместно с адаптером IAR J-Trace for Cortex-M3. Отличительной особенностью STM32W108 является наличие аппаратной поддержки модуля трассировки па-

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


ОБЗОРЫ кетов, который обеспечивает многоуровневую отладку на уровне пакетов. Этот блок является необходимым компонентом для интегрированной среды разработки InSight Desktop компании Ember и при использовании специального адаптера InSight компании Ember обеспечивает возможность расширенной сетевой отладки. Стандартная библиотека для периферийных устройств Стандартная библиотека для периферийных устройств (Standard Peripheral Library) для микроконтроллеров STM32 является полным пакетом, содержащим драйвера устройств для всех стандартных периферийных блоков. Каждый драйвер устройства включает в свой состав набор функций, полностью обеспечивающий работу периферийного блока. Исходные коды, созданные на языке C, подробно документированы и полностью протестированы. Библиотека обеспечивает работу с полным набором стандартных периферийных устройств (устройство контроля, часы реального времени, таймеры и т.п.). Работа с модулями USB, Ethernet и радио-модулем не включена в Standard Peripheral Library и поддерживается программным обеспечением сторонних производителей или специализированными дополнительными библиотеками от ST. Библиотека создана, чтобы облегчить разработку приложений для микроконтроллеров STM32. С помощью Standard Peripheral Library любое периферийное устройство можно использовать для приложения без необходимости детального изучения его функционирования. Хотя для работы с библиотекой требуются элементарные знания программирования на языке C, разработчики будут экономить время, которое иначе было бы потрачено на кодирование общих функций низкого уровня, что позволит уменьшить стоимость разработки и интеграции создаваемых приложений. Библиотека содержит полные исходные тексты на языке C, которые совместимы со всеми средами разработки для микроконтроллеров на базе ядра ARM™. Она предлагает последовательность в наименовании и доступе к переменным, сокращая время на разработку нового кода и облегчая обслуживание старого кода. Особенности и преимущества Standard Peripheral Library • Имеет законченную библиотеку для создания прикладных программ (firmware), написанную на языке C, с входящими в комплект полными исходными текстами и файлами заголовков; • Имеет драйверы и примеры для каждого периферийного устройства;

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010

МИКРОКОНТРОЛЛЕРЫ • Независима от используемой среды разработки; • Изначально создана для работы с ознакомительными платами STMicroelectronics, но может быть легко приспособлена для работы с любым другим аппаратным обеспечением; • Шаблоны проектов имеются для всех поддерживаемых сред разработки; • Полностью документирована в руководстве пользователя; • Имеет дополнительные тренировочные слайды и руководства по быстрому старту; • Полностью совместима со стандартом ARM® Cortex™ Microcontroller Software Interface Standard (CMSIS). Библиотека самотестирования Class B для микроконтроллеров STM32 С октября 2007 года бытовые приборы необходимо сертифицировать на соответствие стандарту EN/IEC60335-1. Не следует позволять этому недавнему требованию к свидетельству безопасности замедлять разработку приложений. Модули самодиагностики для STM32 упрощают сертификацию бытовой техники на соответствие нормам EN/IEC60335-1 Class B (безопасность функционирования), предлагая полный набор функций самотестирования, которые готовы к интеграции в приложение и сертифицированы VDE – всемирным институтом тестирования программного обеспечения. Библиотека для STM32 сертифицирована VDE 12 октября 2007 года. Микроконтроллеры ST одними из первых 32-разрядных микроконтроллеров прошли сертификацию. Таким образом, электронные устройства на базе микроконтроллеров ST также могут быть легко сертифицированы. Библиотека поддерживает тестирование следующих компонентов микроконтроллера: • Регистры CPU; • Программный счетчик CPU; • Вызов и обработка прерываний; • Тактовый генератор; • ПЗУ и ОЗУ; • Внутренняя адресация; • Внутреннее прохождение данных; • Внешняя адресация; • Внешний обмен данными; • Временные интервалы; • Периферия ввода/вывода; • Аналоговые АЦП и ЦАП; • Аналоговый мультиплексор. Отладочные интерфейсы Микроконтроллер STM32W108 имеет в своем составе стандартные интерфейсы Serial Wire и JTAG (SWJ). Интерфейс SWJ является первичным интерфейсом программирования и отладки для микроконтроллеров STM32W108. Он также

обеспечивает доступ средствам отладки к внутренним шинам STM32W108, позволяет осуществлять независимый доступ к памяти и регистрам, а также осуществлять пошаговую отладку CPU. Поэтому, любые разработки, основанные на STM32W108, должны обеспечивать доступность сигналов SWJ. Интерфейс Serial Wire является двунаправленным двухпроводным стандартным протоколом для микроконтроллеров семейства ARM®, созданным для замены JTAG-интерфейса, и обеспечивает все стандартные функции отладки и тестирования. Кроме того, две сигнальных линии Serial Wire (SWDIO и SWCLK) наложены на две сигнальных линии JTAG (JTMS и JTCK). Это делает разработку компактной и позволяет легко переключаться между отладчиками с интерфейсами Serial Wire JTAG без изменения подключения выводов. Поскольку интерфейсы Serial Wire и JTAG предоставляют одни и те же функции отладки и тестирования, компания ST рекомендует использовать первый. Он использует только два вывода, в отличие от пяти для JTAG, и предлагает более простой протокол обмена данными, высокоэффективную передачу данных при низкой потребляемой мощности, встроенное обнаружение ошибок и защиту от импульсных помех. Порт отладочного доступа ARM® CoreSight Debug Access Port (DAP) включает в свой состав Serial Wire- и JTAG-интерфейсы (SWJ). DAP состоит из двух первичных компонентов: порта отладки (SWJ-DP) и порта доступа (AHB-AP). SWJ-DP обеспечивает внешний доступ для отладки, в то время как AHB-AP обеспечивает доступ к внутренним шинам. Внешние отладочные средства присоединяются к отладочным выводам STM32W108, соединенным с модулем SWJ-DP. Затем SWJ-DP обеспечивает обмен данными с AHB-AP. В конечном счете, модуль AHB-AP обменивается данными с внутренними шинами. Стартовый набор ZigBee® STM32W108 Для ускорения разработки и отладки беспроводных приложений на базе микроконтроллера STM32W108 компания STMicroelectronics в январе-феврале 2010 года планирует начать выпуска набора STM32W108 ZigBee® Starter Kit. Стартовый набор представляет собой инструментарий, который можно использовать, чтобы оценить возможности микросхемы STM32W108 для радиочастотного (РЧ) беспроводного обмена данными, основанном на стандарте IEEE 802.15.4-2006 и протоколе ZigBee. Набор обеспечивает всем необходимым для разработки: • Оценочного РЧ-приложения, которое имеет целью выполнить РЧ-тести-

27


ОБЗОРЫ

МИКРОКОНТРОЛЛЕРЫ

ций на уровне ядра, наличия системного и пользовательского режима выполнения кода и имеющую низкий уровень энергопотребления в спящем режиме. Все это позволяет рекомендовать микроконтроллеры STM32W108 для использования в беспроводных приложениях, требующих высокого уровня надежности, в том числе тех из них, которые используют батарейное питание. Рис. 2. Использование библиотеки ST ZigBee Pro рование, обмен данными и разрабатывать программное обеспечение ZigBee. • РЧ-сетевого приложения, которое имеет целью ознакомить с более сложным ZigBee приложением. Библиотека ST ZigBee Pro Компания STMicroelectronics предоставляет своим клиентам библиотеку ST ZigBee Pro, которая совместно с библиотекой для стандартной периферии позволяет реализовывать надежные и экономичные сети на базе микроконтроллеров STM32W108. Примеры использования библиотеки ST ZigBee Pro показаны на рис. 2. В зависимости от сложности приложения используются соответствующие модули библиотеки. Стек ZigBee PRO занимает на 20% меньше места, чем предыдущее поколение программных продуктов.

28

Код библиотеки ST ZigBee Pro, так же как и код библиотеки стандартной периферии, выполняются в системном режиме ядра, тогда как пользовательский код, реализующий алгоритмы сбора и обработки данных, работает в режиме приложения. Это позволяет четко разграничить приоритеты выполнения задач и обеспечить более быстрое реагирование на события, происходящие на аппаратном уровне и связанные с информацией, проходящей через канал обмена данными с внешней средой. Заключение В заключение хочется отметить, что с выпуском микроконтроллеров STM32W108 пользователи получили платформу, обладающую повышенным уровнем надежности за счет резервирования тактовых генераторов, улучшенной схемы обработки ошибочных ситуа-

Литература 1. High-performance, IEEE 802.15.4 wireless system-on-chip http://www. st.com/stonline/products/literature/ ds/16252/stm32w108cb.pdf 2. STM32W for RF applications ESC Boston September 2009 http://www. st.com/mcu/files/mcu/1254219171.ppt 3. STM32W108 ZigBee® starter kit (beta version) http://www.st.com/ stonline/products/literature/ um/16222.pdf 4. STM32 Standard Peripheral Library http://www.st.com/mcu/inchtml. php?fdir=pages&fnam=stm32lib 5. STM32 (CORTEX M3) – Selftest routines Class B norm certification http://www.st.com/mcu/inchtmlpages-stm32_classb.html. Получение технической информации, заказ образцов, поставка – e-mail: mcu.vesti@compel.ru

НОВОСТИ ЭЛЕКТРОНИКИ № 4, 2010


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.