инфракрасный регистратор движения на базе кристалла ATSAM3S
фирмы Atmel
Перевод: Алексей Курнлнн
Материал представляет собой адаптированный перевод руководства по применению [1]. Полную версию руководства на английском языке можно найти на сайте компании Atmel (www.atmel.com).
Введение
Инфракрасные детекторы движения существуют уже достаточно давно и широко используются в системах охраны и мониторинга различных объектов. Они преобразуют инфракрасный сигнал, излучаемый человеческим телом, в электрические сигналы, позволяя детектировать движение электроникой. В современных системах охраны и мониторинга при обнаружении движения дополнительно может производиться фиксация изображения, которое сохраняется в памяти устройства или передается на пульт охраны по предусмотренному каналу связи, чтобы оператор мог увидеть происходящие на объекте события.
Эти функциональные возможности определяют состав ключевых компонентов системы, которые в зависимости от конкретной реализации устройства могут отличаться лишь по своим техническим возможностям. Фирма Atmel предложила пример реализации такого изделия, построенного на базе микроконтроллера ATSAM3S (в качестве центрального процессора) с ядром Cortex-M3 и применила в нем широко используемые в таких задачах компоненты других производителей. Этот пример распространяется производителем в исходных кодах, включающих как программную, так и аппаратную реализацию устройства.
Почему ATSAM3S?
Микроконтроллеры серии ATSAM3S имеют важные особенности, которые предоставили возможность получить оптимальную конфигурацию устройства: • Блок ввода/вывода поддерживает режим
параллельного захвата данных на линиях
ввода/вывода. Это позволяет:
а) использовать недорогие КМОП-матрицы без преобразования интерфейсов;
б) осуществить захват данных без участия процессорного ядра за счет передачи изо-
бражения под управлением периферийного контроллера DMA, который отправит данные непосредственно в память; в) снизить энергопотребление системы, обеспечив возможность перевода процессорного ядра в режим энергосбережения до получения требуемого количества кадров.
• Производительности микроконтроллера достаточно для выполнения алгоритмов сжатия изображения в формат JPEG, что крайне необходимо для оперативной передачи картинки по «узким» коммуникационным каналам либо хранения большого количества изображений на локальном носителе. Существуют камеры со встроенным сжатием изображения, но они обойдутся заметно дороже.
• В микроконтроллер интегрированы аналоговый компаратор и АЦП, необходимые
для детектирования сигнала с пироэлектрического датчика. Имеются встроенные режимы энергосбережения, в том числе с сохранением состояний на линиях ввода/вывода даже в глубоких режимах «сна». Эти функции обеспечивают возможность реализации простого дизайна с минимальным количеством дополнительных компонентов.
В выполненном фирмой Atmel дизайне максимально используются возможности микроконтроллера и задействуют-ся оптимальные для поставленной задачи внешние компоненты.
Структура устройства
На рис. 1 приведена блок-схема предложенного Atmel примера реализации инфракрасного детектора движения с фиксацией
Источник питания
3V PSRAM-
5В -
ЗВ LDO
3V MCU
j фильтр]—
Высокий уровень Низкий уровень — Пороговый 3V MCU
Выключение питания
кмоп-
камера OV774Q
VDDIN
VDDIO
GPIO
ADVREF
SMC
GPIO
АСР+
Atmel
SAM3S4C SPI
АСР Cortex-M3
JTAG
USB
GPIO
TWI (ГС)
Data SMC
Clock
Pixel Clock
Frame/Sync
Выключение питания ь
521 кбайт PSRAM
10-контактный разъем для беспроводного модуля Atmel RZ600 сетей IEEE 802.15.4
—►! 20 вы вод oBj
Для демонстрационных целей
320x240 16-битный цветной TFT-дисплей
рис. 1. Блок-схема примера дизайна инфракрасного детектора движения с фиксацией изображения
II j
t g~ i л
; ni
« зр: й=
—-^-.„г,-, * iJ<n-i ¿a
.i-?;- ...... 1 4
щ T II.-.™
sS --TJK * >
нв JSC „
ЩЩЩ ; од J.. (, ,
—" ^ЙИ-"--,
■гита - ? i
V '
да
Рис. 2. Внешний вид лицевой и обратной сторон платы детектора:
1 — пироэлектрический сенсор с линзой Френеля; 2 — КМОП-камера; 3 — разъем для подключения беспроводных модулей RZ600; 4 — память PSRAM; 5 — разъем micro USB-AB; 6 — разъем для подключения эмулятора/программатора;
7 — «линия отреза» — линия, за пределами которой начинается область для демонстрации полученной картинки; компоненты за этой линией не нужны в серийном изделии
изображения. В ней красным выделены блоки, которые необходимы для отладки приложения и отображения результата.
На рис. 2 приведены фотографии макета, реализованного AtmeL В перспективе возможен его выпуск в качестве оценочного набора.
Питание
Схема питания устройства изображена на рис. 3. Регулятор напряжения MN6 обеспечивает регулируемое выходное напряжение, которое установлено на уровне 3 В. Следует отметить, что для обеспечения работы ядра и контроллера ввода/вывода микроконтроллера SAM3S достаточно напряжения 1,62 В, но 3 В в данном случае требуются для работы аналоговой подсистемы КМОП-камеры. Ток покоя регулятора напряжения составляет 55 мкА в активном режиме, а режим энергосбережения в схеме не задействован, поэтому в серийном изделии оправдан выбор другого регулятора напряжения. Элемент MN4 — это термически защищенный прецизионный стабилитрон, необходимый для защиты схемы от всплесков напряжения при различных переходных процессах в системе питания и подключения питания с неверной полярностью. MN5 — фильтр для подавления шумов и электромагнитных помех, приходящих со стороны внешнего источника питания. При реализации питания от батарей фильтр можно исключить. Джампер ^6 предусмотрен для измерения энергопотребления схемы.
Тактирование
На плате устройства использован кварцевый резонатор для высокочастотного генератора и часовой кварц для генератора часов реального времени микроконтроллера
j3 MN4
МР179Р 2.1mm ZEN056V130A24LS 1 1
ш-
-к
-ф
i"
С28 С29 100 нФ 22 мкФ
MN5
BNX002-01
sv cv
SG CG1 CG2 CG3
+5 В
3 т
JP5
ч^Ть-
ii_C30 10 мкф
MN6
LP38692MP-ADJ
VOUT ADJ
R26
16,8 кОм 1%
hR27 :
И 12 кОм 1%
С31
1 мкФ, X7R
JP6 +3V_MCU
-ГЪ—т
С32 10 мкФ
DGND
Рис. 3. Схема питания устройства
ATSAM3S (рис. 4). Первый необходим для обеспечения работы интерфейса USB, а второй — для точных отсчетов времени. Для тактирования процессорного ядра и периферии в качестве опорного источника тактовых сигналов используется встроенный КС-генератор c программируемой частотой
4, 8 или 12 МГц, в котором частота для комнатной температуры может быть выставлена точно, если задействовать калибровочные коэффициенты, записываемые в нестираемую область Flash-памяти при производстве кристаллов. Для тактирования часов реального времени может быть использован низкочастотный КС-генератор. Для запуска ядра
и периферии на высоких частотах входная частота с встроенного высокочастотного RC-или кварцевого генератора преобразуется встроенным в кристалл блоком ФАПЧ.
Детектирование движения
В качестве первичного преобразователя инфракрасного сигнала использован сдвоенный пироприемник RE200B фирмы Nicera. Пироприемник снабжен линзой Френеля, формирующей чувствительные зоны для инфракрасного сигнала. Доступный в России аналог RE200B — преобразователь PIS209S тайваньской фирмы Sencera, которая рабо-
компоненты и технологии • № 7 '2011 www.kit-e.ru
MN1
AT91SAM3S-LQFP100
С415 пф
97
-
СИ 12 МГц
У XOUT 96
DGND
С1 DNP
т
на:
XIN32
XOUT32
С2 DNP
DGND
РВ9 XIN
РВ8 XOUT
РА8 XOUT32
Рис. 4. Схема тактирования ATSAM3S
тает на рынке первичных преобразователей с 1992 года и, помимо самих преобразователей, производит линзы Френеля.
Резистор R42 в схеме служит преобразователем тока в напряжение (рис. 5). Это напряжение усиливается 2-каскадным усилителем на 80 дБ. Размах выходного сигнала на выходе усилителя составляет 2900 мВ от пика до пика, измеренных при воздействии излучения «абсолютно черного тела» интенсивностью 420К мкВт/см2. Выходной сигнал в случае движения нарушителя находится в частотном диапазоне от 0,3 до 5 Гц.
Усилитель также осуществляет полосовую фильтрацию на компонентах R37/C45-R39/C50 и R31/C33-R34/C39 в частотном диапазоне сигнала с выхода пироприемника. Максимальное ослабление сигнала в полосе пропускания--3 дБ, а в полосе заграждения — минимально -40 дБ. На рис. 6 приведены сигналы усилителя: зеленым обозначен сигнал на выходе первого каскада (OUT2), желтым — второго (OUT1). Здесь на отрезке «1» представлен сигнал, возникший при прохождении условного нарушителя в одну сторону, а сигнал на отрезке «2» — в обратную.
Сигнал с выхода усилителя поступает на вход AD0 аналого-цифрового преобразователя — линия PA17 контроллера. В ATSAM3S входы АЦП и аналогового компаратора мультиплексированы, то есть один и тот же вывод может быть использован и как входной сигнал аналогового компаратора. Такая особенность даст возможность осу-
U1 /1
Г UTD
li-L-
S
П
яп M
Ь 1 -G
\
RE200B
□
J V_I*
й
R33 1 МОм
R35 1 МОм
R36 ЮкОм
с49 il с50
I'
Х7
AGND AGND
15
R42 кОм
R39 ЮкОм
СЗЗII100 нф
тС=Ь
J R31
MN8 1 МОм
LT1495CS8
D
R34 ЮкОм
-С39 -г- 10 мкф
Г Г 1 R37
C4S L I 1 МОм
100 нф
6
-С50
--10 мкф —р 10 мкф
тСЗ-
R40
.Г
12— Л
AD4,
ADC single end input
B1 +3V_MCU
_T
BN03K314S300R
- C44
- 100 нф
TCZF-
\7
AGND
1
□
649 ком 1%
D
R61
200 кОм 1%
R62
649 кОм 1%
AD4,
Comparator plus
4 > pbi AD5,
Comparator minus
\7
AGND
Рис. 5. Схема включения первичного преобразователя и усилительный каскад
.AD7
TS
.DACO
-DAC1
-ADO
_AD3
Аналоговый компаратор
Рис. 7. Мультиплексирование входных сигналов аналогового компаратора
ществить первичное детектирование движения без участия АЦП и процессорного ядра, оценивающего результат преобразования. Это позволит заметно снизить энергопотребление микроконтроллера, особенно при редких событиях.
На рис. 7 изображена схема мультиплексирования входных сигналов аналогового компаратора. Наличие мультиплексора на входе компаратора в данной задаче обеспечит возможность программного переключения отрицательного и положительного входов компаратора и позволит реализовать функцию оконного детектора, определяющего не только положительный, но и отрицательный «уход» входного сигнала.
Значения порогов детектирования задаются резистивным делителем на резисторах R60, R61 и R62. С приведенными номиналами резисторов верхний порог равен 1,7 В, а нижний
порог — 1,3 В. Именно этим делителем и задается чувствительность детектора. Также существует возможность задания порога и программно: в ATSAM3S имеется ЦАП, который в дизайне не задействован. Его использование не лучшим образом скажется на энергопотреблении устройства, но придаст дополнительную гибкость конфигурации.
Описанная схема организации детектирования движения может быть немного упрощена: оценку уровня сигнала можно производить непрерывным аналого-цифровым преобразованием на АЦП, встроенном в контроллер ATSAM3S. В этом случае можно избавиться от второго усилительного каскада и задействовать усилитель, встроенный в ATSAM3S на входе АЦП. С коэффициентом усиления 4 входной сигнал с первого каскада (с коэффициентом усиления 60 дБ) в конечном итоге будет усилен на 72 дБ, что уже будет достаточно для получения надежного результата. Естественно, что при таком подходе заметно пострадает энергопотребление системы, так как для оценки полученных данных необходимо еще задействовать процессорное ядро. При этом придется писать дополнительный код, так как такой подход в проекте АШе1 не реализован.
При упрощении усилителя лучше не избавляться от фильтра на выходе первого каскада, так как он дополнительно играет роль антиалайзингового фильтра на входе АЦП.
Получение изображения
Дизайн устройства выполнен с использованием КМОП-камеры OV7740 фирмы OmniVision. Эта камера имеет встроенные цепи оцифровки аналогового сигнала с матрицы и первичной обработки изображения. Она способна обеспечить захват изобра-
жения с разрешением 640x480 точек с частотой до 60 кадров/с, либо с разрешением 320x240 точек — до 120 кадров/с, а картинка на выходе может быть представлена в форматах RAW RGB или YUV.
На выходе камеры — цифровой параллельный интерфейс, а управление ею осуществляется по шине I2C. В качестве служебных сигналов имеются вход тактирующего импульса и выходы сигналов вертикальной и горизонтальной синхронизации и синхронизации пикселей (рис. 8).
Данные с параллельного интерфейса камеры подключены к линиям ввода/вывода ATSAM3S, при этом не используется интерфейс внешней памяти. Здесь применена встроенная функция параллельного захвата данных непосредственно блоком ввода/вывода. Данные помещаются во внешнюю память под управлением периферийного контроллера DMA без участия процессорного ядра.
Как видно на схеме (рис. 8), для камеры необходимо три различных напряжения питания: DVDD для цифровой подсистемы, DOVDD для блока ввода/вывода, AVDD для аналоговой подсистемы. Аналоговая подсистема и подсистема ввода/вывода питаются от напряжения 3 В, организованного цепями питания, описанными выше, но для предотвращения прохождения по цепям питания помех и паразитных сигналов добавлен LC-фильтр. Для цифровой подсистемы камеры необходимо напряжение питания 1,5 В, поэтому в цепь ее питания добавлен еще регулятор напряжения MN11.
Так как камера при идеальных условиях нужна достаточно редко, то для снижения энергопотребления предусмотрена возможность отключения питания этой системы: на входе предусмотрен ключ, управляемый выходом PC16 микроконтроллера. Запуск системы пита-
РЭКАМ
Рис. 9. Схема захвата параллельных данных ATSAM3S c внешней камеры
мыз
|в6бт51216ВИ
Рис. 10. Схема подключения памяти PSRAM на демонстрационной плате
МКО —-
+ЗУ_РБРАМ I-1
47 кОм
мш
|в66УУУ51216ВЬЬ
РС19 АЗ
РС20 А4
РС21 А5
РС22 ВЗ
РС23 В4
РС24 СЗ
РС25 С4
РС26 04
РС27 Н2
РС28 НЗ
РС29 Н4
РСЗО Н5
РС32 БЗ
РА18 64
РА19 РЗ
РА30 ГА
РАО Е4
РА1 03
РА23 Н1
РС18 АО А1
АО ООО
А1 001
А2 002
АЗ □03
А4 004
А5 005
А6 006
А7 007
А8 008
А9 009
А10 гаю
А11 □011
А12 □012
А13 □013
А14 □014
А15 □015
А16
А17 N01
А18 N02
N03
ЬВ#
ив#
ТСС
СЕ# тсса
ОЕ#
\«Е#
тгм Увво
ее
В1
01
02
02
Е2
Р1
б
■=- +ЗУ РБРАМ
± X
026 100 нФ
]И20
02 ШЬМЬ6401
-С27 1 мкФ
Рис. 11. Схема подключения с использованием всего объема памяти MN3
ния происходит за 0,4 мс, после чего через 1 мс камера готова принимать команды, и затем через дополнительные 5 мс она уже начинает работу в заданной конфигурации.
Камера в этом дизайне используется в режиме 8-битной передачи данных, а в качестве тактирующего сигнала служит сигнал со встроенного в ATSAM3S программируемого генератора тактовых сигналов (рис. 9).
Забегая немного вперед, отметим, что время доступа к внешней памяти, куда сохраняются данные с камеры, подключенной на интерфейс внешней памяти ATSAM3S с 16-битной шиной данных, составляет 55 нс, что ограничивает скорость передачи данных во внешнюю память в режиме чтения изображения в цветном 16-битном RAW-формате. При чтении изображения в 8-битном черно-белом формате, казалось бы, скорость можно удвоить, но здесь ограничение налагает уже сама камера, которая может работать на частоте тактирующего импульса от 6 до 27 МГц. Таким образом, на частоте системной шины (МСК), равной 64 МГц, и при целочисленном делителе этой частоты в программируемом генераторе тактовых сигналов кристалла ATSAM3S получаем, что при передаче цветной картинки допустим тактирующий сигнал частотой МСК/4 (16 МГц), а при передаче черно-белой картинки — МСК/3 (примерно 21 МГц).
Несмотря на эти ограничения, цветная картинка размером 320x240 точек может быть считана с камеры достаточно быстро — за 320х240х2х(1/16) = 9,6 мс.
Схема подключения камеры не имеет согласующих элементов, несмотря на высокую частоту сигналов, передаваемых между камерой и микроконтроллером в параллельном режиме. Здесь согласование линий осуществляется со стороны микроконтроллера за счет интегрированных в ATSAM3S согласующих резисторов: их номинал 36 Ом вместе с волновым сопротивлением выходных буферов ввода/вывода кристалла образует волновое сопротивление 50 Ом. Этот функционал решает две потенциальные проблемы: исключает паразитные пульсации по питанию при одновременном переключении сигналов на параллельной шине камеры и минимизирует «звон» в цепях тактирования.
Для хранения, последующей обработки и сжатия даже одной картинки размером 320x240 точек микроконтроллеру ATSAM3S уже потребуется внешняя память. В этом изделии к интерфейсу внешней памяти ATSAM3S подключена внешняя псевдостатическая память (PSRAM) объемом 512К 16-разрядных слов. Такая память применена ввиду ее малой стоимости в сравнении с обычной статической памятью, а с 16-разрядной организацией — по причине ее большей доступности для АШе1.
На схеме (рис. 10) видно, что в микросхеме используется только младший байт в каждой ячейке памяти. Эта проблема может быть решена с помощью переключения в схеме стар-
шего и младшего байтов внешним управляющим сигналом (рис. 11), тем самым будет задействован 1 Мбайт памяти этой микросхемы.
Следует отметить, что здесь, как и в случае с камерой, предусмотрена возможность отключения питания микросхемы внешней памяти сигналом от микроконтроллера с помощью ключа Q2. Это обусловлено стремлением максимально снизить энергопотребление системы посредством отключения очередного редко используемого потребителя.
Что касается коммуникационных возможностей дизайна, то здесь предусмотрен разъем для подключения радиомодулей RZ600 производства фирмы Atmel, для которых свободно распространяется пакет BitCloud SDK для организации сетей ZigBee.
Программная поддержка
Для поддержки этой разработки фирма Atmel также распространяет программный продукт, в котором реализованы ключевые режимы работы устройства. Имеющиеся в микроконтроллере ресурсы задействованы в коде программ оптимальным образом, а особенное внимание уделено режимам энергосбережения. Так, например, расчетное время жизни батареи емкостью 2,8 А-ч превышает 5 лет при условии детектирования нарушителя не более одного раза в день.
Помимо процедур детектирования картинки и ее считывания с камеры, программный продукт содержит портированный
на ATSAM3S код проекта, именуемого IJG (Independent JPEG Group, www.ijg.org) версии 8a, в котором реализован алгоритм сжатия картинки в формат JPEG. Микроконтроллер справляется со сжатием картинки размером 320x240 точек за 218 мс и декодированием для отображения на дисплее за 181 мс.
Детально программный продукт Atmel описан в документе 11091A-ATARM, который можно найти на сайте производителя. Сам же проект находится на сайте в разделе SAM3S-PIRRD Motion Detector Camera.
Заключение
Описанный пример является в высокой степени оптимальным способом применения микроконтроллеров ATSAM3S. На базе документации производителя можно либо повторить его с использованием принципиальной электрической схемы, Gerber-файлов печатной платы и списка комплектующих, либо модифицировать под собственные нужды на базе проекта, выполненного в ORCAD. А предоставленные коды программ помогут быстро оценить реальные возможности описанной конфигурации. ■
Литература
1. Passive InfraRed Reference Design (PIRRD) for SAM3S Motion Detector Camera. Ver. 11091A-ATARM-10. Nov. 2010 // Руководство по применению.