МК pic. Системы беспроводного доступа pke на основе pic16f639
TRANSCRIPT
Алексей САФРОНОВ
46 компоненты рубрикаwww.finestreet.ru
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2007
База, установленная на автомобиле, по-
сылает низкочастотную (НЧ) команду
(125 кГц) для поиска транспондера в ее
поле. Обнаруженный транспондер автомати-
чески отвечает базовой станции. База разбло-
кирует двери машины, если полученный от-
вет идентифицирует транспондер как «свой».
Обычно базовая станция для PKE проек-
тируется так, чтобы выходная мощность бы-
ла максимально возможной и удовлетворя-
ла нормам электромагнитного излучения, ут-
вержденным государством. При напряжении
питания порядка 9–12 В максимально дости-
жимая амплитуда напряжения на антенне со-
ставляет около 300 В. В связи с тем, что НЧ
сигнал плохо распространяется, амплитуда
сигнала, принимаемого транспондером на
расстоянии около двух метров от базы, со-
ставляет всего несколько милливольт. Кро-
ме того, из-за ориентационных свойств ан-
тенны, уровень входного сигнала транспон-
дера значительно падает, если максимум
диаграммы направленности его антенны не
сориентирован на антенну базовой станции.
Наиболее вероятная причина отсутствия
связи между базой и транспондером — это
слабый сигнал на входе транспондера. Сле-
довательно, для надежного функциониро-
вания PKE необходимо, чтобы на требуемой
дальности связи уровень входного сигнала
был больше уровня входной чувствитель-
ности.
Итак, основными параметрами, которые
нужно учесть при проектировании системы
PKE, являются:
1. мощность выходного сигнала (команды)
базы;
2. входная чувствительность транспондера;
3. свойства направленности антенны;
4. длительность работы батареи транспон-
дера.
PIC16F639 — это микроконтроллер (МК)
с тремя аналоговыми низкочастотными при-
емными каналами (analog front-end или AFE).
МК управляет работой аналоговой части. Бла-
годаря простоте применения и наличию AFE,
PIC16F639 может быть использован в раз-
личных интеллектуальных двунаправлен-
ных устройствах НЧ-связи.
Рассмотрим пример расчета схемы транс-
пондера PKE и его базовой станции с исполь-
зованием МК PIC16F639, а также пример
встроенных в МК программ. Представлен-
ные схема и алгоритм могут быть легко мо-
дифицированы под конкретные пользова-
тельские цели.
PKE�транспондер на базе PIC16F639
МК PIC16F639 имеет цифровую (ядро
PIC16F636) и аналоговую (AFE) части и мо-
жет использоваться в различных двунаправ-
ленных системах НЧ-связи.
На рис. 1 приведен пример такой системы
PKE.
Базовая станция посылает на частоте
125 кГц команду для поиска «своего» транс-
пондера в радиусе действия поля. PKE-транс-
пондер отвечает, если принятая им команда
верна.
Пассивные транспондеры, использующие двунаправленную беспровод�
ную связь с базовой станцией в режиме hands�free, быстро нашли широ�
кое применение в автоматизированных дистанционных системах иденти�
фикации и контроля доступа, они могут устанавливаться на многих новых
моделях автомобилей. Вместо нажатия кнопки брелка для блокировки или
разблокировки дверей автомобиля теперь возможно получить доступ к ав�
томобилю, просто имея при себе соответствующий транспондер. Такие си�
стемы получили название Hands�free Passive Keyless Entry (PKE).
Системы беспроводного доступа
Passive Keyless Entry
на основе нового
микроконтроллера PIC16F639
Рис. 1. Функционирование PKE
KiT#68(3).qxd 3/21/2007 4:21 PM Page 46
рубрика компоненты 47
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2007
Наличие трех приемных каналов с высо-
кой входной чувствительностью (до 1 мВ)
позволяет подключить три антенны, ориен-
тированные в трех взаимно перпендикуляр-
ных плоскостях, благодаря чему транспондер
сможет обнаружить сигналы с любого на-
правления в любое время. Это снижает веро-
ятность пропуска сигнала, обусловленного
направленными свойствами антенны. Вход-
ные сигналы от каждой антенны детектиру-
ются независимо, а после суммируются. Каж-
дый входной канал может программно вклю-
чаться и выключаться. Чем меньше каналов
включено, тем меньше потребление тока.
При работе в режиме hands-free транспон-
дер безостановочно детектирует входные сиг-
налы. Это сокращает срок службы батареи.
Следовательно, для уменьшения рабочего то-
ка цифровая часть МК может находиться
в режиме ожидания (Sleep), пока нет необхо-
димости обрабатывать принятую команду.
Цифровая секция «просыпается», когда AFE
обнаруживает сигнал на входе, удовлетворя-
ющий условиям фильтра wake-up, критерии
которого могут задаваться программно.
В PIC16F639 имеется 9 таких фильтров. Поль-
зователь может запрограммировать фильтр
посредством конфигурационных регистров.
Когда фильтр запрограммирован, устройст-
во будет пропускать сигнал к цифровой час-
ти, только если он соответствует требовани-
ям фильтра, иначе цифровая часть остается
в энергосберегающем режиме.
На рис. 2 приведен пример схемы PKE-
транспондера. Транспондер состоит из МК
PIC16F639, трех внешних резонансных LC-
антенн, кнопок, УВЧ передатчика, цепи ре-
зервного питания (опционально) и литиевой
батареи 3 В.
Цифровая часть имеет 2 порта ввода-вы-
вода — PORTA и PORTC. Каждый из выво-
дов PORTA поддерживает возможность пре-
рывания по изменению уровня состояния.
AFE использует 3 вывода PORTC, внутрен-
не соединенные с C—
S–
, SCLK/AL—
ER—
T—
и LFDATA/
CCLK/RSSI/SDIO выводами AFE. AL—
ER—
T—
и LFDATA/CCLK/RSSI — выходные выводы
AFE. SCLK, SDIO и C—
S–
используются для про-
граммирования и считывания регистров кон-
фигурации AFE. Более подробную информа-
цию можно получить в описании PIC12F635/
PIC16F636/639 (DS41232).
Для экономии энергии батареи цифровая
часть находится в спящем режиме, пока AFE
не обнаружит НЧ входной сигнал. Хотя вы-
ходные выводы AFE внутренне соединены
с выводами PORTC, выходные сигналы AFE
не выводят цифровую часть из энергосбере-
гающего режима, так как они не имеют функ-
ции прерывания на изменение уровня. Сле-
довательно, необходимо соединить LFDATA
и AL—
ER—
T—
с выводами PORTA так, как показа-
но на рис. 2.
Таким образом, цифровая часть может
«пробудиться», если произойдет одно из сле-
дующих событий:
1. появление выходного сигнала на выводе
LFDATA AFE;
2. появление выходного сигнала на выводе
AL—
ER—
T—
AFE;
3. нажатие кнопок, изменяющих уровень од-
ного из выводов PORTA.
Пробуждающий фильтр и обнаружение сигнала
Пользователь может запрограммировать
один из девяти фильтров, разрешающих вы-
водить цифровую часть из энергосберегаю-
щего режима, посредством регистров конфи-
гурации. Более подробную информацию
можно получить в описании PIC12F635/
PIC16F636/639 (DS41232).
Внешняя резонансная LC�антенна
PIC16F639 имеет 3 НЧ приемных канала
для подключения трех внешних резонансных
LC-антенн. Каждая из LC-цепочек подклю-
чается к одному из выводов LCX, LCY, LCZ
и общему выводу LCCOM. Конденсатор
(1–10 нФ) между «землей» и LCCOM необхо-
дим для стабильной работы внутреннего де-
тектора при распознавании входных сигна-
лов большой амплитуды.
Хотя PIC16F639 имеет 3 вывода для внеш-
них антенн, пользователь может использо-
вать только одну или две антенны. Потребле-
ние тока пропорционально количеству рабо-
тающих каналов. Тем не менее, для hands-free
PKE-устройств рекомендуется использовать
все три антенны.
Теория резонансных LC�антенн
Для детектирования НЧ электромагнитно-
го поля обычно используется рамочная ан-
тенна, представляющая собой параллельный
резонансный LC-контур. Для максимизации
напряжения на контуре, он должен быть точ-
но настроен на рабочую частоту (несущую
частоту базовой станции). Также повысить
напряжение на антенне можно увеличением
рабочей площади антенны и добротности
контура.
Частота резонанса параллельного LC-кон-
тура находится по формуле:
. (1)
А напряжение на антенне с достаточной
точностью можно определить по формуле:
, (2)
,
где fc — рабочая частота базы (Гц), f0 — резо-
нансная частота LC-контура (Гц), N — коли-
чество настроенных катушек рамочной ан-
тенны, S — площадь антенны (м2), Q — доб-
ротность LC-контура, B0 — напряженность
магнитного поля (Вб/м2), α — угол между
нормалью к плоскости антенны и линиями
напряженности поля.
В связи с тем, что конденсатором на часто-
те 125 кГц можно пренебречь, добротность
контура преимущественно определяется до-
бротностью индуктивности:
, (3)
где r — резистивное сопротивление катушки
(Ом).
Обычно индуктивность катушки состав-
ляет порядка 1–9 мГн. Добротность LC-кон-
тура чуть более 20 для катушки с воздушным
сердечником и около 40 — для катушки
с ферритовым сердечником.
Рис. 2. Схема транспондера
KiT#68(3).qxd 3/21/2007 4:21 PM Page 47
48 компоненты рубрика
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2007
Выражение Scos(α) в формуле (2) опреде-
ляет эффективную площадь антенны. Эф-
фективная площадь антенны максимальна
при cos(α) = 1, что наблюдается, когда диа-
граммы направленности антенны базы
и транспондера направлены друг на друга.
В этом случае будет наибольший диапазон
обнаружения, а при ортогонально направ-
ленных антеннах обнаружение транспонде-
ра вообще невозможно.
Сложности с ориентацией антенны транс-
пондера можно решить, установив на пе-
чатной плате три взаимноортогональные
антенны. Это увеличивает вероятность то-
го, что в любой момент времени хотя бы од-
на из антенн транспондера будет направле-
на на базу.
Настройка LC�антенн
Как видно из формул (2) и (3), индуци-
рованное напряжение на катушке макси-
мально, когда LC-контур точно настроен на
несущую частоту принимаемого сигнала.
Однако на практике резонансная частота LC-
контура у одинаковых транспондеров мо-
жет быть различна из-за допустимых откло-
нений значений емкостей и индуктивностей
от номинала, а также из-за температурного
и временного дрейфа. Для компенсации
этой ошибки в PIC16F639 в каждом канале
имеется по встроенному конденсатору, ем-
кость каждого из которых может программ-
но задаваться с шагом 1 пФ до значения
63 пФ. За более подробной информацией
можно обратиться к описанию PIC12F635/
PIC16F636/639 (DS41232).
Емкость можно эффективно подобрать по-
средством контроля выходного тока RSSI, ко-
торый пропорционален размаху входного
сигнала. Следовательно, наибольший выход-
ной сигнал RSSI будет наблюдаться при точ-
ной настройке LC-контура на несущую час-
тоту принимаемого сигнала.
Емкость внутреннего конденсатора сумми-
руется с емкостью контура. Таким образом,
резонансная частота LC-контура понижает-
ся с ростом внутренней емкости.
Резервное питание и безбатарейный режим
На практике всегда есть вероятность, что
батарейное питание схемы пропадет, напри-
мер, когда батарея разрядится. В таком слу-
чае, возможна неправильная работа МК, что
может привести к неверному приему или пе-
редаче команд. Для предотвращения такой си-
туации предусмотрена схема резервного пи-
тания, которая способна временно обеспечить
напряжением питания транспондер. Резерв-
ное питание усложняет транспондер, но в не-
которых случаях оно может быть просто не-
обходимо. На рис. 2 компоненты D4, D3 и C1
организуют цепь резервного питания. Пока
батарея подсоединена, конденсатор C1 пол-
ностью заряжается, а в момент ее временно-
го отсоединения снабжает схему электроэнер-
гией за счет накопленного заряда.
В некоторых системах может появиться по-
требность в пассивном транспондере (то есть
работающем без батарейного питания). В та-
ком случае транспондер питается за счет энер-
гии внешнего электромагнитного поля.
На рис. 2 диоды D1, D2, D3 и конденсатор C1
формируют схему питания при безбатарей-
ном режиме. Наведенное на катушку LZ
транспондера напряжение вызывает ток, ко-
торый протекает через диоды D1 и D2. Этот
ток заряжает конденсатор C1, который мо-
жет обеспечить напряжение питания транс-
пондера. Емкость конденсатора C1 в пассив-
ном транспондере составляет от нескольких
микрофарад до нескольких фарад в зависи-
мости от применения.
Алгоритм детектирования НЧ сигнала
На рис. 3 приведен алгоритм детектиро-
вания НЧ сигнала. Программа для МК
(PIC16F639_Basestation.asm) доступна для сво-
бодного скачивания с сайта www.microchip.com.
Схема транспондера
Схема транспондера включает три внеш-
них резонансных LC-контура, 5 кнопок, ре-
зонатор 433,92 МГц для передачи данных на
УВЧ и схему резервного (или безбатарейно-
го) питания.
Рис. 3. Алгоритм детектирования НЧ сигнала транспондером
KiT#68(3).qxd 3/21/2007 4:21 PM Page 48
рубрика компоненты 49
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2007
Воздушная рамочная антенна соединена
с выводом LCX, а катушки с ферритовым
стержнем — с LCY и LCZ. Вывод LCCOM-
общий для всех трех антенн. Каждая антен-
на должна быть настроена на несущую час-
тоту базы для улучшения условий приема
сигнала. Для более точной настройки резо-
нансной частоты каждого LC-контура ис-
пользуются встроенные конденсаторы в каж-
дом канале.
При включении питания цифровая часть
программирует регистры конфигурации AFE
посредством SPI (C—
S–
, SCLK/AL—
ER—
T—
, SDIO)
и переходит в энергосберегающий режим.
AFE очень восприимчива к внешним шу-
мам из-за высокой входной чувствительно-
сти (~3 мВ). Следовательно, необходимо по
возможности устранить избыточные шумо-
вые токи по дорожкам печатной платы.
Для этого используются блокировочные кон-
денсаторы, фильтрующие шумы цепей пи-
тания.
Диоды D4 и D3 и конденсатор C1 форми-
руют схему резервного питания. Диоды D1,
D2 и D3 и конденсатор C1 используются для
организации безбатарейного режима. Боль-
шее значение емкости C1 необходимо для ста-
бильной работы в безбатарейном режиме.
Конденсатор C1 заряжается от батареи и от
рамочной антенны через диоды D1 и D2.
За счет запасенной энергии он может времен-
но обеспечить питанием PIC16F639, когда ба-
тарея отсоединяется. Диоды D1 и D2 подклю-
чены к воздушной рамочной антенне, на ко-
торой наводится большее напряжение, чем
на катушках с ферритовым стержнем.
Когда принимается верный входной сиг-
нал, цифровая часть пробуждается и отсыла-
ет ответ, если команда верна.
Транспондер может выслать команду на
базу посредством внутреннего модулятора
(НЧ ответ) или внешнего УВЧ передатчика.
Аналоговые приемные каналы имеют по
встроенному модулятору между входом
(LCX, LCY, LCZ) и выводом LCCOM. Эти
модуляторы включены (модулируя поле, из-
лученное базой) или выключены в соответ-
ствии с командой от цифровой части МК.
База может детектировать изменения поля,
вызванные изменением напряжения на ан-
тенне транспондера, и восстанавливать мо-
дулированный сигнал. Использование тако-
го метода (НЧ ответ) возможно лишь при ма-
лом радиусе действия устройства.
Если требуется работа транспондера на
большом расстоянии, то необходимо исполь-
зовать УВЧ передатчик. УВЧ передатчик
включает в себя резонатор (433,92 МГц) и уси-
литель мощности. Конструктивно УВЧ ан-
тенна является индуктивностью (металличе-
ская дорожка на печатной плате), эффектив-
ность которой значительно возрастает
с увеличением площади, окруженной этой
дорожкой. УВЧ передатчик функционирует,
когда на соответствующих выводах порта
ввода/вывода установлен высокий логичес-
кий уровень сигнала (нажата одна из кнопок),
иначе он выключен. Информационный сиг-
нал модулируется и излучается УВЧ передат-
чиком, а затем восстанавливается УВЧ при-
емником на базе.
Схема базы
На рис. 4 изображен пример схемы НЧ
приемопередающей части базовой станции,
используемой для демонстрационных уст-
ройств и учебных целей.
База включает в себя МК, приемопередат-
чик на 125 кГц и УВЧ приемник.
Задача базы — послать НЧ команду на ча-
стоте 125 кГц и принять ответ от транспон-
дера, находящегося в излученном поле, по-
средством УВЧ или НЧ. Выслав НЧ команду,
база проверяет наличие какого-либо НЧ от-
вета или ВЧ команды.
Передатчик 125 кГц создает сигнал несу-
щей частоты при помощи ШИМ-модуля-
тора МК. Полученный меандр с частотой
125 кГц усиливается драйвером тока U1.
Далее меандр преобразуется в синусоидаль-
ные колебания, поскольку проходит через по-
следовательный колебательный контур, со-
стоящий из L1, C2, C3, C4. При этом катуш-
ка L1 используется как 125-килогерцовая
НЧ антенна.
Рис. 4. Схема НЧ приемопередающей части базы
KiT#68(3).qxd 3/21/2007 4:21 PM Page 49
50 компоненты рубрика
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 3 '2007
Излучение антенны максимально, когда по-
следовательный колебательный LC-контур на-
строен на частоту ШИМ-сигнала. На резонанс-
ной частоте импеданс LC-контура минимален.
Следовательно, ток нагрузки через L1 макси-
мален, и создаваемое магнитное поле тоже
максимально. Настроить LC-контур можно,
контролируя напряжение на L1. Компоненты,
расположенные после диода D1, используют-
ся для приема НЧ ответа от транспондера.
При наличии НЧ ответа, магнитное поле, со-
зданное транспондером, вызывает изменение
напряжения на L1. Это напряжение отличает-
ся по фазе на 180° от напряжения на этой же
катушке при излучении НЧ команды.
Изменение напряжения на L1 распознается
детектором огибающей и НЧ фильтром, со-
стоящим из диода D1 и конденсатора C5. Де-
тектированная огибающая проходит через ак-
тивные усиливающие фильтры U2A и U2B
и поступает на вход встроенного в МК компа-
ратора для формирования импульсов (сигнал
с выхода компаратора доступен в контроль-
ной точке TP6). Далее он декодируется в МК.
Для приема АМ сигналов 433,92 МГц пред-
назначен модуль УВЧ приемника. Он детек-
тирует УВЧ сигнал транспондера. Цифровой
выходной сигнал с него поступает на МК для
декодирования. Антенна обычно присоеди-
няется к специальной контактной площадке
модуля для стабильного приема сигнала. УВЧ
приемник расположен близко к НЧ передат-
чику, создающему достаточно мощное поле,
являющееся помехой для приема УВЧ отве-
та транспондера. Это требует соответствую-
щих аппаратно-программных мер по филь-
трации шумов.
Базовая станция при обнаружении своего
транспондера может, например, отображать
какую-то информацию на дисплее, опове-
щать звуком, то есть выполнять определен-
ную задачу.
Микропрограммное обеспечение
Все микропрограммное обеспечение, вклю-
чая HTML-документацию на транспондер
и базу, доступны для скачивания в едином
архиве на корпоративном сайте Microchip
(www.microchip.com). Использование памя-
ти в приведенном примере:
транспондер: память программ — 1131 слово;
память данных — 65 байт;
база: память программ — 1178 слов;
память данных — 405 байт.
Следует обратить внимание, что PIC16F639,
кроме AFE и стандартного ядра PIC16, имеет
модуль кодера-декодера KeeLoq, который не
используется в приведенном ПО. Техноло-
гия KeeLoq значительно повышает безопас-
ность системы, обеспечивая защиту от пере-
хвата кода. По вопросам получения права на
использование алгоритма KeeLoq необходи-
мо обратиться в Microchip.
Пример диалога базы с транспондером
приведен на рис. 5.
Для МК PIC16F639 доступен отладочный
комплект Passive Keyless Entry Reference
Design, являющийся демонстрационной пол-
ностью функционирующей PKE-системой.
Он включает брелок (содержащий PIC16F39),
базовую станцию и приемник-декодер. База
излучает сигнал на частоте 125 кГц. Брелок
принимает и декодирует запрос базы. Если
он совпадает с ожидаемым, то брелок высы-
лает сигнал на частоте 432 МГц. Его прини-
мает приемник-декодер и брелок идентифи-
цируется как «свой» или «чужой». Более по-
дробную информацию можно получить
в описании Passive Keyless Entry Reference
Design (APGRD001).
Области применения транспондерных сис-
тем:•• автомобильные иммобилайзеры;•• контроль въезда и выезда автомобилей на
территорию предприятия;•• учет времени нахождения сотрудника
в различных помещениях;•• системы ограничения доступа;•• электронные замки;•• идентификационные системы.
МК PIC16F639 — надежный приемопере-
датчик (транспондер) для создания двуна-
правленного канала связи с высоким уров-
нем безопасности, отличающийся простотой
применения и низкой ценой. Он может быть
использован во всевозможных миниатюр-
ных автоматических дистанционных систе-
мах идентификации и контроля доступа. Кон-
фигурация одной из таких систем изображе-
на на рис. 1. На сайте Microchip доступны для
скачивания примеры микропрограммного
обеспечения на таких систем. Предоставлен-
ная информация может быть модифициро-
вана и использована разработчиками для сво-
их целей. ■
База передает: импульс стабилизации АРУ +
(шаг 1) сигнал, пробуждающий МК +
8 бит (команда идентификации) +
1 бит четности +
1 стоп-бит
Транспондер передает: заголовок +
(шаг 2) 32 бита (идентификация) +
4 бита четности
База передает: импульс стабилизации АРУ +
(шаг 3) сигнал, пробуждающий МК +
8 бит (команда
для запроса опознавания) +
32 бита (запрос) +
5 битов четности +
46 стоп-битов
Транспондер передает: заголовок +
(шаг 4) 32 бита (ответ) +
4 бита четности (36 битов)
База: отображает информацию на дисплее,
подает звуковой сигнал
или выполняет
(шаг 5) другое назначенное задание.
Рис. 5. Пример диалога базы с транспондером
KiT#68(3).qxd 3/21/2007 4:21 PM Page 50