Построение ZigBee модуля на базе беспроводного микроконтроллера JENNIC JN5139 с питанием от дисковых элементов
Беспроводной микроконтроллер JN5139
Технологии ZigBee посвящено множество публикаций. Без сомнения, ZigBee является одной из «горячих тем» в области беспроводной передачи данных. Крупнейшие мировые производители микросхем, такие как Texas Instruments, Freescale, Atmel и Microchip, включили ZigBee-продукты в свои линейки поставок. Однако даже на фоне этих гигантов аналитики выделяют английскую компанию Jennic, которая сосредоточила свои усилия исключительно на выпуске ZigBee беспроводного микроконтроллера JN5139 (JN5121) и модулей на его основе. Сегодня — это одна из немногих компаний, которая не только предлагает совершенные технические решения и поддержку, но и предоставила открытый доступ к бесплатному ZigBee-стеку протоколов для построения полноценной сети с MESH-топологией. Компания проявляет завидную активность по поддержке разработчиков — на сайте Jennic действует форум, где инженер может получить ответы на технические вопросы. Подробная документация и новые рекомендации по применению появляются практически еженедельно в разделе support сайта www.jennic.com /ссылка утеряна/. Для быстрой разработки ZigBee-сети Jennic выпускает отладочный комплект (рис. 1), который включает в себя 5 узлов сети, бесплатную среду для разработки приложения пользователя, примеры программ и средства для тестирования. Каждая плата отладочного комплекта содержит датчики влажности, температуры и освещенности. Дополнительное оборудование и датчики можно подключить к платам при помощи портов расширения. Включенная в комплект программа домашней автоматизации позволяет управлять светодиодами на удаленных узлах сети и отображает состояние температуры, освещенности и влажности на LCD-панели координатора. Средства тестирования сети содержат сетевой анализатор Daintree Networks, который позволяет наблюдать за передаваемыми в сети пакетами.
В 2007 году компания Jennic выпустила ZigBee-трансивер второго поколения — JN5139 (рис. 2). По сравнению со своим предшественником — JN5121 — новый трансивер обладает рядом преимуществ, которые также выгодно выделяют его на фоне продукции конкурентов:
- Повышенная дальность связи, благодаря увеличенной до -97 дБ чувствительности приемника и повышенной (+3 дБм) выходной мощности передатчика.
- Чрезвычайно низкое потребление тока в спящем режиме (400 нА) при ожидании внешнего прерывания. При работающем таймере потребление тока составляет менее 1,5 мкА.
- Увеличенный до 192 кбайт объем ROM-памяти. Выпускаются также более дешевые варианты микросхемы с меньшим объемом ROM-памяти.
- Встроенный в микросхему регулятор напряжения позволяет использовать батарейное питание в широком диапазоне напряжений — от 2,2 до 3,6 В.
- Наличие в ROM программного обеспечения: уровень MAC IEEE802.15.4 version B, поддержка внешней последовательной Flash-памяти, обновление программного обеспечения пользователя по эфиру.
- Каждая микросхема имеет уникальный MAC-адрес и 256 бит однократно программируемой памяти, куда пользователь может записывать ключ шифрации при использовании AES-128.
- Совместимость по выводам с трансивером JN5121 позволяет обновить дизайн устройств без необходимости разработки новой печатной платы.
На базе данной микросхемы можно построить недорогой ZigBee-модуль (рис. 3) с минимальной стоимостью комплектующих — менее $5. Компания Jennic бесплатно предоставляет ZigBee-стек покупателям своего трансивера JN5139, поэтому платить за программное обеспечение для данного модуля разработчику не придется. Модуль выполнен в виде небольшой двусторонней печатной платы размером 47х29 мм и обеспечивает дальность связи до 1 км на открытом пространстве.
Для снижения себестоимости в предлагаемом модуле используется антенна в виде проводников печатной платы. Краевые контакты по периметру платы позволяют сэкономить на стоимости разъемов. Принципиальную схему, топологию слоев и прочую информацию по данному модулю можно найти в файле JN-RM-2031-Low-Cost-Module-1v0.pdf, доступном на сайте производителя. Для тестирования модуля можно использовать плату из отладочного комплекта JN5139-EK010 (рис. 4)
Применение дисковых элементов питания
Являясь, на первый взгляд, привлекательным и компактным источником питания, дисковый элемент (рис. 5) имеет ряд недостатков, которые усложняют его применение в ZigBee-устройствах, требующих кратковременных импульсов относительно большого тока. В зависимости от применения можно настроить систему так, чтобы обойти некоторые из этих ограничений. Далее перечислены преимущества и недостатки дисковых элементов.
Преимущества:
- компактность и малый вес;
- номинальное напряжение одного элемента 3 В;
- относительно постоянный уровень выходного напряжения при разряде;
- очень низкий уровень саморазряда.
Недостатки:
- малая емкость;
- высокое внутреннее сопротивление;
- низкий уровень максимального выходного тока;
- долгое время восстановления после перегрузок по току;
- падение емкости элемента при повышенной нагрузке.
Выбор дискового элемента
При выборе элемента питания системы необходимо учитывать ряд ключевых параметров, определяющих, каким типам элементов отдать предпочтение. Рассмотрим критерии выбора.
1. Средний ток потребления
Самым важным параметром, влияющим на выбор элемента питания, является средний ток потребления устройства. Так как величина отдаваемого тока зависит от состояния системы, для нахождения среднего значения необходимо определить потребляемый ток во всех режимах эксплуатации, а также продолжительность работы в каждом из них.
Для подсчета среднего тока потребления необходимо определить среднее потребление для каждого из режимов по приведенной формуле:
где I — мгновенное значение тока в данном режиме, tвкл — время потребления тока, а tоткл — время покоя в цикле расчетного режима.
Рассмотрим работу устройства, имеющего три режима работы:
- Режим ожидания — непрерывное потребление тока 4 мкА.
- Прием сигналов радиомаяка и их обработка — пробуждение каждые 10 секунд на 2 мс, ток потребления тока при этом 40 мА.
- Режим передачи данных — передача сообщения пять раз в день, ток потребления при этом — 40 мА в течение 100мс.
Таким образом
Очевидно, это простой пример. В реальных приложениях может быть гораздо больше состояний, которые отличаются по величине тока потребления.
2. Требуемый срок службы батареи
После того как подсчитан средний ток потребления, можно по следующей формуле определить емкость, требуемую для питания устройства в течение заданного времени работы:
где Iсредн — средний ток потребления в амперах, а Tраб — требуемое время работы батареи в часах.
Возьмем рассмотренный выше пример и предположим, что требуемый срок службы батареи — 1 год:
Итак, в данном случае наименьшая емкость элемента питания должна быть, по крайней мере, 107,2 мАч.
3. Максимальный ток потребления
Так как емкость дискового элемента зависит от тока нагрузки, на выбор элементов питания влияет и максимальный ток, который в произвольные моменты времени может потреблять устройство. Для дисковых элементов питания характерно очень высокое внутреннее сопротивление и низкие показатели по максимальной нагрузочной способности.
Вернемся к нашему примеру. Подходящим элементом питания мог бы стать элемент CR2032 с номинальной емкостью около 220 мАч. В таблице 1 приведена спецификация данного типа элемента производства Sanyo.
Из приведенных данных видно, что пороговое значение напряжения равно 2 В. Так как это ниже минимального рабочего напряжения JN5139, равного 2,2 В, необходимо учитывать эту разницу в последующих расчетах. Если для других компонентов системы требуется более высокое минимальное напряжение, то это тоже необходимо учесть.
Также видно, что, имея продолжительный ток разряда 4 мА, элемент CR2032 будет отдавать только 50% своей номинальной емкости. К счастью, в нашем примере средний ток потребления составляет только 12,232 мкА, что значительно ниже приведенного типового значения 0,3 мА.
Так как микросхема контроллера беспроводной связи компании Jennic будет работать только при напряжении не ниже 2,2 В, мы должны учесть это при подсчете максимально возможного значения энергии импульса. Элемент питания способен обеспечить импульс тока 20 мА в течение 15 с при начальном напряжении 3,0 В и конечном 2,0 В. Соответственно, имея падение напряжения 1 В в течение 15 с, получаем скорость падения 0,0666666 В в секунду.
Так как для нас нижнее значение напряжения составляет 2,2 В, можно позволить падение не более 0,8 В. При скорости падения 0,0666666 В/с это даст продолжительность импульса 12 с (0,8/0,0666666) для среднего значения напряжения 2,6 В, допуская линейный характер падения напряжения. Если преобразовать энергию импульса в джоули, то:
Для данного примера можно подсчитать энергию, требуемую для импульса 40 мА продолжительностью 100 мс (допуская, что среднее напряжение импульса равно 2,6 В):
Так как это значительно меньше энергии, которую способен обеспечить в импульсе анализируемый элемент питания, вероятно, что CR2032 мог бы стать достойным кандидатом для рассматриваемого случая. Тем не менее, благоразумнее обратиться к производителю за подтверждением этой информации, поскольку внутреннее сопротивление элемента (которое не приведено в справочных данных) может ограничить максимальный ток.
4. Увеличение максимального импульсного тока
Если выбранный элемент не в состоянии обеспечить требуемую энергию импульса, можно дополнить энергию элемента энергией, накопленной параллельно подключенным конденсатором.
Требуемую емкость конденсатора можно вычислить, следуя нижеприведенным указаниям:
- Вычислите значение падения напряжения, В, которое может допустить система при максимальной импульсной нагрузке (в нашем случае — 0,8 В, так как начальное напряжение по условию 3,0 В, а конечное — 2,2 В).
- Вычислите значение максимальной энергии, которую может обеспечить элемент в одиночном импульсе (для рассматриваемого элемента это значение равно 0,624 Дж) — назовем его Eпит.
- Вычислите значение максимальной энергии Eсис, требуемой для системы.
- Подсчитайте дефицит энергии Eдеф = Eсис — Eпит
Для данного примера, если нашей системе требуется импульс максимум 40 мА в течение 6,5 с:
Следовательно, дефицит энергии Eдеф равен 0,676 – 0,624 = 0,052 Дж
5. Для вычисления емкости конденсатора, требуемой для компенсирования дефицита энергии, используйте следующую формулу:
В данном случае требуемая емкость очень велика. Поэтому с экономической точки зрения целесообразнее выбрать элемент питания с большей емкостью.
Если выбран элемент питания с очень плохими импульсными характеристиками, но при этом требуется обеспечить большой ток только в течение очень коротких интервалов времени, можно обеспечить весь импульсный ток конденсатором, емкость которого может быть подсчитана по формуле:
В качестве альтернативы, чтобы вычислить время, в течение которого данный конденсатор может обеспечить большой ток, воспользуйтесь следующими указаниями:
- Выберите конденсатор — для этого примера возьмем 4700 мкФ.
- Определите падение напряжения, которое может допустить система — в данном случае оно равно 0,8 В.
- Определите ток, который будет потребляться нагрузкой — в данном случае он равен 40 мА.
Затем, для определения длительности импульса, которую может обеспечить конденсатор, применим следующую формулу:
Отсюда видно, что обычный конденсатор может обеспечить броски тока только в течение очень коротких интервалов времени.
5. Стоимость
Как видно из таблицы 2, емкости дисковых элементов CR2032 разных производителей несколько отличаются. При поиске дешевых элементов всегда обращайте внимание на технические параметры кандидатов, так как эксплуатационные качества элементов одного типа от разных производителей могут отличаться.
6. Размер
Если применение самого малогабаритного из возможных дисковых элементов не является приоритетом, рассмотрите использование элемента с большей емкостью. Это позволит исключить многие проблемы, связанные с элементами малой емкости.
Например, элемент CR2450 ненамного больше, но обладает почти трехкратной емкостью элемента CR2032, а также имеет гораздо более широкий диапазон импульсного и непрерывного разряда. Так как CR2450 обеспечивает намного большее время работы по сравнению с CR2032, который использовался в ранее рассмотренных примерах, это привело бы к меньшей стоимости обслуживания конечного продукта, так как менять батарею пришлось бы реже. Меньшие эксплуатационные расходы могут компенсировать увеличенную стоимость элемента большей емкости.
Работа в сети
Так как энергетический потенциал элементов с такой малой емкостью очень низок, необходимо использовать любой шанс для удержания устройства в течение как можно большего времени в режиме ожидания (при котором ток потребления крайне мал). Дисковые элементы не предназначены для работы в сетях, которые требуют, чтобы абоненты находились в активном режиме и прослушивали произвольные сообщения, так как из-за переключения в режим приема повышается расход энергии. Далее приводятся возможные сценарии работы дисковых элементов.
1. Поток данных от координатора к конечным устройствам
Если поток данных направлен от координатора сети к конечным устройствам, то они должны периодически активизироваться для приема от координатора новой информации. Так как желательно, чтобы конечное устройство пробуждалось на как можно меньшее время, наиболее подходящей сетевой топологией была бы «звезда с маяком» (с синхронизацией доступа к каналу).
В звездообразной сети с маяком возможна синхронизация конечных устройств по сигналам маяков, а в паузах между сигналами — их перевод в режим ожидания. После синхронизации по сигналу маяка конечное устройство переходит в режим ожидания, активизируясь только во время приема следующего синхросигнала и любых ожидающих сообщений. Затем устройство обрабатывает данные и возвращается в режим ожидания так быстро, насколько это возможно.
Необходимо с должным вниманием отнестись к выбору периода синхронизации, так как при запуске фаза начальной синхронизации требует, чтобы радиоканал был включен постоянно, пока не будут приняты два последовательных сигнала маяка. При длительных периодах синхронизации возможна ситуация, когда батарея не сможет обеспечить требуемый ток нагрузки.
2. Поток данных от конечных устройств к координатору
Если поток данных направлен от конечных устройств к координатору сети, то данные устройства могут оставаться в режиме ожидания до тех пор, пока уведомляющее сообщение не оповестит их о том, что они должны принять данные. Так как в данном сценарии координатор включен всегда, он может оставаться в режиме приема и прослушивать сообщения от конечных устройств.
Анализ аппаратных средств
Рассмотрим, как правильный выбор аппаратуры может снизить потребление тока.
1. Внешний кварцевый генератор с частотой 32 кГц
Для систем, в которых синхронизация осуществляется посредством обычного маяка, применение более точного генератора на 32 кГц вместо встроенного RC-генератора той же частоты, но имеющего низкую точность, позволяет конечному устройству такой сети активизироваться в моменты, более близкие к сигналам маяка. Это, в свою очередь, сокращает время работы конечного устройства в режиме приема, что приводит к экономии энергии. Тем не менее, необходимо балансировать между сэкономленной энергией и энергией, потребляемой внешним генератором.
2. Конденсаторы с низкими потерями
При попытке минимизировать потери энергии в системе уделите внимание выбору конденсаторов. Например, танталовый конденсатор NEC/Tokin 220 мкФ, 4 В имеет ток утечки до 8,8 мкА. Если такой конденсатор подключить к источнику питания, он мог бы, работая непрерывно, тратить больше энергии, чем требуется для питания системы на основе JN513x в режиме ожидания.
Анализ программного обеспечения
На потребление энергии значительное влияние могут оказывать программные средства управления.
1. Калибровка RC-генератора с частотой 32 кГц
Если в сети с маяком для задания интервалов активации применяется встроенный RC-генератор, калибровка по частоте 16 МГц, стабилизированной кварцевым генератором, позволит компенсировать погрешность RC-генератора.
Повышение точности времени активации для приема сигналов маяка позволяет устройству активизироваться в моменты, более близкие к сигналам маяка. Соответственно, сокращается время ожидания синхросигналов.
2. Пассивное сканирование
При пассивном сканировании устройство может находиться в режиме приема относительно долго. Это требует много энергии. Если система ориентирована только на работу с небольшим подмножеством доступных каналов, то сканирование ограниченного числа каналов значительно уменьшит расход энергии.
3. Длина пакетов
Каждый передаваемый по радиоканалу байт потребляет энергию. Расход обусловлен включением радиопередатчика на время передачи данных или приемника на время их приема. Следовательно, минимизация объема транслируемых данных приведет к уменьшению энергопотребления.
Для систем с маяком, которые посылают сигналы синхронизации без полезной нагрузки, это приведет к уменьшению времени работы в режиме приема для всех конечных устройств, таким образом, можно сохранить значительное количество энергии.
Заключение
Беспроводной микроконтроллер Jennic JN5139 позволяет построить недорогой ZigBee-модуль со стоимостью всех элементов ниже $5. При правильном подходе минимизация стоимости комплектующих не ведет автоматически к понижению технических характеристик модуля. При оптимальном расчете режимов работы ZigBee-модуля и правильном выборе дискового элемента питания можно обеспечить автономную работу конечного узла ZigBee-сети в течение нескольких лет.