Компоненты и технологии, № 6'2002
Эти «таблетки» вам помогут,
или Еще раз об ¡Buttons фирмы Dallas Semiconductor
¡Button, или «таблетка» фирмы Dallas Semiconductor, — это популярное название целого семейства микросхем Touch Memory. Это миниатюрное электронное устройство, выполненное в виде металлической таблетки диаметром 16 мм, похоже на стопку из трех монет по 1 рублю (см. рис. 1-2).Оно имеет 48-битный (6-байтный) уникальный серийный номер, зашитый в ROM при изготовлении (даже без номера серии и кода контрольной суммы это примерно 256 триллионов комбинаций, что гарантирует точную идентификацию, так как не существует двух одинаковых изделий) и может иметь энергонезависимую память.
Леонид Вихарев
e-mail: [email protected]
-Є
F5 MICROCAN
■ 5.89 -0.51
0.36^
Ю
7
Кс
Щ
онтейнер, состоящий из двух частей, выполненных из нержавеющей стали, служит защитной упаковкой и одновременно клеммой для подключения к сети. Герметичный стальной корпус предохраняет чип от вредных атмосферных воздействий, от механических повреждений и от электромагнитных полей. При этом корпус выполняет роль контакта для земли, а крышка служит контактом для линии данных. Размер пакета позволяет вкладывать литиевую батарейку, что обеспечивает 10-летний резерв мощности для сохранения данных в памяти RAM, когда таблетка не связана с сетью. Однако существует ряд устройств iButton, которые не требуют батареи резервного питания памяти. Основные типы микросхем этого семейства представлены в таблице 1.
Несмотря на непрезентабельный внешний вид, «таблетка» является довольно красивым, с позиций электроники, прибором. Фирма Dallas Semiconductor разработала уникальную технологию, на основе которой производит компоненты, соединяющие в себе малопотребляющую память, литиевую батарейку резервного питания, схемы компараторов напряжения питания, управляющие схемы и различные, в зависимости от назначения прибора, дополнительные схемные узлы. Это помогло фирме создать группу оригинальных электронных устройств, при-
меняемых в самых различных и до недавней поры неосвоенных областях. Здесь и так называемые супервизоры питания, контролирующие уровни питающих напряжений в системе и формирующие сигнал сброса для микропроцессора, и «хранители времени» — часы, отсчитывающие секунды, минуты, часы, дни, дни недели, месяцы и годы, имеющие энергонезависимую память, и собственно микросхемы энергонезависмой памяти, и схемы контроллеров заряда автомобильных аккумуляторов, встраиваемые внутрь батареи, и контроллеры хорошо известной серии М8С51, имеющие внутри эту самую память, цифровые потенциометры и другие весьма полезные микросхемы. «Таблетки» — один из примеров такого рода устройств. Структурная схема для 081920 с энергонезависимой памятью, приведенная на рис. 3, позволяет оценить сложность такой внешне простой штучки, как 1Бийоп.
Б81990А — простейший из приборов этой серии. Он состоит из блоков, обведенных на рис. 3 пунктирной линией, и схем синхронизации. Сравнительная простота этой микросхемы определяет и ее цену — этот самый дешевый прибор из серии 1Бийоп стоит сегодня чуть дороже обычного ключа для механического дверного замка. (Возможно поэтому он чаще всего и применяется в электронных замках в качестве ключа.)
Рис. 1. Размеры iButton
Таблица 1
Тип прибора Код серии Серийный номер Объем памяти /тип Защита памяти Часы Таймер Счетчик циклов
DS1990A 01H + - - - - -
DS1991 02H + 512/NVRAM 3x384 - - -
DS1992 08H + 1K/NVRAM - - - -
DS1993 06H + 4K/NVRAM - - - -
DS1994 04H + 4K/NVRAM - + + +
DS1995 0AH + 16K/NVRAM - - - -
DS1996 0CH + 64K/NVRAM - - - -
DS1982 09H + 1K/EPROM - - - -
DS1985 0BH + 16K/EPROM - - - -
DS1986 0FH + 64K/EPROM - - - -
DS1920 10H + 16/EEPROM | Датчик температуры
Компоненты и технологии, № 6'2002
«Таблетки» могут подключаться к простой линии связи, так называемой 1-Wire Net (однопроводная сеть), через которую они могут читаться и записываться. 1-Wire Net, так же известна как сеть MicroLAN — дешевая сеть, основанная на ПК или микроконтроллере, которая используется как связь в цифровой форме по витой паре для взаимодействия с 1-проводными компонентами. Она определена как сеть с открытым стоком (проводное И), ведущая (ведомая) многоточечная архитектура, которая использует в ведущем резистор к +5 В. Базовая система 1-проводной сети состоит из трех основных элементов: задающее устройство с программным управлением (мастер), электрические проводники и соответствующие соединители и 1-провод-ные устройства. И мастер и ведомый конфигурированы как приемопередатчики, передающие данные в любом направлении, но только в одном направлении единовременно.
С технической точки зрения, передачи данных полудуплексны и разрядно-последовательны по единственной паре проводов, от которой ведомые получают питание при помощи внутреннего диода и конденсатора. Информация читается или записывается, когда устройство подключается к шине, адресуемой мастером. Обычно порт конструктивно выполняется как входное отверстие в виде внешнего кольца и изолированных, нагруженных пружиной центральных проводов, установленных в соответствующее размещение. Пример конструктивного исполнения порта шины приведен на рис. 4.
Рис. 3. Структурная схема DS1920/21
iButton — самосинхронизирующиеся устройства. Логика синхронизации обеспечивает способ измерения и генерации цифровых импульсов различной длительности. Данные могут интерпретироваться как команды согласно заранее спланированному формату, идентифицированному кодом семейства, которые сравниваются с информацией, уже сохраненной в iButton, или могут быть просто сохранены в iButton.
Питающее напряжение должно быть минимум 2,8 В для того, чтобы перезарядить конденсатор оперативной памяти, который используется как источник энергии исполнителя в течение периодов времени, когда линия передачи данных находится в нуле. Емкость этого конденсатора — приблизительно 800 пФ. Поскольку номинал конденсатора невелик, его действие заметно лишь в течение очень короткого вре-
мени, когда iButton входит в контакт с зондом (мастером). Полная постоянная времени зарядки конденсатора определяется непосредственно конденсатором, внутренним сопротивлением (приблизительно 1 кОм), сопротивлением кабеля и контактов, емкостью кабеля и резистором, подтягивающим линию передачи данных к уровню напряжения питания.
Взаимодействие iButton и мастера начинается в момент касания «таблеткой» линии связи сети. При этом выполняется следующая последовательность: мастер, постоянно находясь в режиме ожидания, проводит инициализацию системы, посылая импульс сброса и ожидает в ответ импульс, указывающий на присутствие iButton. Обнаружив таблетку, мастер выполняет передачу команды чтения ПЗУ (для всех разновидностей устройств она одна — 33Н). Он управляет передачей информации, генерируя временные интервалы и исследуя реакцию исполнителя. Данные читаются или записываются, начиная с наименьшего значащего бита. 8-разрядный код семейства сохранен в первом байте, который идентифицирует тип устройства. Следующие 6 байтов хранят уникальный индивидуальный серийный номер, в то время как последний байт содержит код CRC, величина которого основана на данных, содержащих-
ся в первых семи байтах. Это позволяет мастеру определить, читался ли адрес без погрешности. (Нужно отметить, что сеть работоспособна на линиях связи длиной до 300 метров.)
В системе 1-Wire логические значения 1 и 0 представлены низкими уровнями напряжения. Продолжительность низкоуровневого импульса, соответствующая лог. 1, должна быть короче 15 мкс.Чтобы сеть надежно работала даже в наихудших условиях, продолжительность низкого импульса для логического 0 должна быть, по крайней, мере 60 мкс. Импульс продолжительностью 480 мкс определен как импульс сброса. В конце активной части каждого битового интервала необходим особый интервал времени (минимум 1 мкс), в течение которого линия связи подтягивается к верхнему уровню напряжения. Он нужен для восстановления готовности к пересылке следующего бита. Это время (неактивная часть временного интервала) также должно быть добавлено к продолжительности активной части при расчете полного времени, требующегося для передачи одного бита. На рис. 5 приведена временная диаграмма для 1-Wire Net в момент касания «таблеткой» линии связи.
Любой стандартный микроконтроллер типа 8051 с тактовой частотой, по крайней мере,
.. VPULLUP ■ "PULLUP MIN ■ VlHMIH -
Vilmax -
ov-
-ss-
■ ÍRSTL
T R5TH ■
rPDH
■PDL"
RESISTOR
MASTER
iButton
Regular Speed 480 |js < tßsjL < oo*
480 jjs < < 00 (includes ercovery tíme)
15 |js < tpp|_| < 60 ms 15 ^js < tpp|_ < 240 |js
Overdrive Speed 48 |js < tßgjL ^ 80 [iS 48 |js < tRSTH < oo 2 M* ¿ tpDH < 6 jjs 8 ps < tpDL < 24 |js
Рис. 5. Временная диаграмма импульса сброса и импульса присутствия
е
Компоненты и технологии, № 6'2002
1,8 МГц или ПК, использующий UART на скорости 115,2 кбит/с, может служить ведущим для сети. UART выполняет синхронизацию в сети, посылая байты для каждого 1-провод-ного бита, создавая короткую (в пределах байта) и длинную (для слотов) синхронизацию, кодируя, таким образом, двоичные 1 и 0.
На этой скорости передачи данных 14,4 кБ/с (115,2 / 8 = 14,4) ПК может адресовать узел на шине и принимать данные меньше чем за 7 мс. Так как синхронизация управляется UART, микропроцессорная тактовая частота не воздействует на поисковое время. Широкие допуски в формировании временных интервалов позволяют даже медленным микропроцессорам легко выполнять требования синхронизации для сети 1-Wire Net, а требования к уровням напряжений на линии связи позволяют применять устройства так называемого 5-вольтового интерфейса RS232.
В операциях записи лог. 1 или лог. 0 UART устанавливает низкий логический уровень на шине на короткое время (меньше чем 15 мкс), или на более долгий период (больше чем 60 мкс) соответственно.
При чтении UART также переводит линию на низкий уровень на короткий период, действуя так, как будто была послана лог. 1. Затем он снимает сигнал и наблюдает за поведением линии связи. Если шина перешла к высокому уровню, то UART определяет это как чтение лог. 1. Если исполнитель 1-Wire расширяет временной интервал, инициализированный мастером, продолжая удерживать низкий уровень (несмотря на то, что подтягивающий резистор пытается привести линию к уровню +5 В), UART понимает это как чтение логического нуля. Пример выполнения команды чтения ПЗУ в сети 1-Wire Net приведен на рис. 6.
Фирмой Dallas Semiconductor свободно распространяется профессиональный программный пакет разработчика iButton-TMEX SDK, являющийся универсальным средством для профессиональных программистов, который значительно упрощает процесс создания программ для обслуживания устройств с 1-Wire интерфейсом, подключенных через стандартные типы адаптеров к персональным компьютерам РС и некоторым типам карманных компьютеров.
Примеры реализации устройств с применением таблеток фирмы Dallas Semiconductor можно найти в отечественной периодике и в Интернете. Так, в статье «Имитатор электронных ключей iButton», помещенной в журнале «Схемотехника» № 1'2000, описано устройство, позволяющее читать коды ключей электронного замка, использующего «таблетки» DS1990A. Здесь приведены схемы и кратко описана их работа. Поскольку найти журнал в печатном виде сегодня может быть затруднительно, редакция выставила на свой сайт его электронную версию (статья находится по адресу http://www.dian.ru/pdf/ibutt.pdf) В другой работе «Электронный замок с ключами iButton», размещенной по адресу http://ra-diotech.by.ru/Shematic_PCB/DigitalTehniks/to uch_mem.htm, описана схема замка, приведены алгоритмы ее работы, описана конструктивная реализация и даже предлагаются программы для микропроцессора, примененного в устройстве. Знакомство с этими статьями представляется полезным для всех, кто хотел бы лучше понять устройство и принципы работы iButtons. Читатель также может найти на сайте фирмы «Элин» по адресу http:// www.elin.ru/MicroLan/01.htm#1 практически любую, в том числе и на русском языке, информацию, необходимую для понимания
Touch
Presence
pulse
ROM Data 64 bits
ШЛШГ ЧЛШГ
1 1 0 I 0 I 1 1 I 0 I 0 I
Timing defined by host
0 1
0 0
начало цикла задано мастером, продолжительность тайминга определяется ¡buttons и резистором
Bus Master ¡Button
Resistor pull-up
Рис. 6. Пример выполнения команды чтения ПЗУ 33Н по линии связи
принципов работы 1-Wire Net и примеры реализации считывающих устройств.
Как видно из приведенных примеров, чаще всего далласовские «таблетки» применяются в замках или, точнее, в системах контроля доступа (СКД) в помещения. Это правильнее, поскольку проходные, оборудованные такими замками, позволяют не только пропускать либо не пропускать посетителей, но и вести контроль за временем прихода и ухода, за передвижением персонала по территории и попытками проникновения в различные помещения.
Попробуем оценить достоинства и недостатки различных СКД и выяснить применимость «таблеток» в этих системах.
В настоящее время отечественной промышленностью и рядом зарубежных фирм предлагается чрезвычайно широкий набор различных средств контроля доступа. Проведем их сравнительный анализ, причем будем понимать термин «контроль» в широком смысле, подразумевая в том числе и управление. К разряду электронных СКД относятся системы с цифровой клавиатурой (кнопочные), с карточками и с электронными ключами, причем системы с карточками в свою очередь можно подразделить на контактные и дистанционные. Для отпирания двери с кнопочными замками (клавиатурой) требуется набрать правильный буквенно-цифровой код. Недостатком таких СКД является их низкая скрытность — можно подсмотреть набираемый код и потом воспользоваться им для проникновения в помещение. Длинный код повышает секретность, но он неудобен тем, что его трудно запомнить.
В СКД по карточкам ключом является кодированная карта, которая выполняет функцию удостоверения личности служащего и обеспечивает ему проход в помещение. Кодировка может иметь различное исполнение — это могут быть, например, карточки с нанесенным на них шрих-кодом или магнитная карта.
Карты со штрих-кодом наиболее просты в изготовлении и могут быть изготовлены на любом приличном принтере. Код подобен тому, что наносится на упаковку товара и считывается фотосчитывателем примерно так же, как это происходит в магазинах или на других предприятиях торговли. Эта простота изготовления карт, безусловно, сказывается на стоимости всей СКД, но она же сказывается и на надежности системы, снижая ее. Достаточно сделать ксерокопию карточки для того, чтобы получить доступ в нужное помещение.
Более надежны СКД с магнитными картами, которые представляют собой листок картона с наклеенной на него полоской магнитной ленты. Запись информации на магнитную полоску выполняется специальным устройством. Такие карты используются не только в СКД, но и в метро, как проездной документ, в таксофонах (телефонах-автоматах), как платежное средство, и еще в целом ряде применений. В российском Интернете читатель без труда найдет описание технологии изготовления таких карт, принципы кодирования и защиты информации, схемы считывателей и записывающих устройств. (Интересно, что отечественные «народные умельцы» интересуются не только российскими системами, но и британ- www.finestreet.ru------------------------
Компоненты и технологии, № 6'2002
скими, украинскими, израильскими, белорусскими и другими зарубежными устройствами.) Богатая подборка материалов на эту тему находится, например, на сайте отечественных хакеров по адресу http://www.hackersrussia.ru/ в разделе «Карты». В СКД системы на базе таких карт получили большое распространение благодаря их сравнительной простоте и невысокой цене. Правда, в недорогих системах требуется ручная протяжка карты через считывающее устройство, причем скорость протяжки должна быть постоянной, иначе возможно неверное прочтение. В этом, а также в возможности подделки карт, заключается главный недостаток таких систем. (В более дорогих системах карту «заглатывает» механизм, который протаскивает ее через щель считывателя, обеспечивая нужную скорость.)
Следующий класс СКД — системы с бесконтактным считыванием информации. Они, без сомнения, более удобны и современны, так как не требуют средств протяжки, сложны для подделки и позволяют считывать данные, не причиняя неудобств носителю карты. Внутри этого класса можно тоже различать несколько видов, разделяя их по дальности считывания (до 70 см, до 3 м и свыше 3 м), по возможности или невозможности бесконтактной перезаписи данных, по радиочастотному диапазону и т. д. и т. п., однако это — «тема другой диссертации». В данной статье отметим лишь, что СКД такого типа сегодня еще довольно дороги и по этой причине пока не получили широкого распространения.
Можно назвать еще СКД со считывателями биометрической информации, например, со считыванием отпечатка пальца или с контролем по произношению случайно выбранных слов, со считыванием рисунка сетчатки глаза или комплексные, объединяющие в себе контроль по нескольким параметрам. Но они, во-первых, очень дороги и применяются лишь на особо секретных объектах, а во-вторых, даже они не лишены недостатков и также могут ошибаться. Может, например, запачкаться палец и вас не пропустят. Вы можете заволноваться или охрипнуть и останетесь не у дел, так как СКД не узнает ваш голос. Случившийся накануне гипертонический криз может испортить картину сетчатки глаза и т. д.
Наибольшим вниманием пользуются системы с электронными ключами Touch Memory, поскольку именно они сегодня обладают наилучшим соотношением стоимости, надежности, простоты и эффективности контроля доступа. (Конечно, недостатки при желании можно найти и у них. Можно, например, закоротить клеммы считывателя или покрыть их изолирующим составом, затруднив контактирование «таблетки» с линией связи.) Сломать, конечно, можно все, однако на все можно придумать и свои методы защиты. Ну а сегодня недорогие и надежные системы на далласов-ских «таблетках» работают во многих подъездах многоквартирных домов, исправно служат на проходных предприятий, позволяя не только контролировать доступ на территорию фирмы, но и одновременно отслеживать режим рабочего дня, время прихода и ухода сотрудников, их передвижение по помещениям.
Но системы контроля доступа — далеко не единственное применение iButton. Широко известно использование этих устройств как средств идентификации человека в ситуациях, когда носитель «таблетки» по каким-либо причинам не способен ничего сообщить о себе сам. Это так называемые аварийные браслеты и жетоны или медицинские браслеты. Уникальность номера позволяет однозначно идентифицировать носителя, а наличие встроенной памяти объемом до 64 Кбайт позволяет сохранить информацию о группе крови, о перенесенных заболеваниях, о проводившемся лечении и назначенных лекарствах, о наличии родственников, о месте жительства и т. п. — данные вплоть до черно-белой фотографии или флюорограммы человека.
Известно применение iButtons в качестве своеобразного эквивалента проездного билета. Например, в Турции, в Стамбуле, до 1994 года пять миллионов пассажиров ежедневно покупали свыше 40 типов различных билетов, жетонов, карточек для оплаты проезда в городском транспорте. Контроль за таким обилием платежных средств был довольно трудным делом и требовал существенных расходов. Была нужна эффективная система расчетов, простая в использовании, легко настраиваемая и достаточно дешевая в обслуживании. Турецкие инженеры предложили применять устройства Touch Memory фирмы Dallas Semiconductor в качестве платежного средства. Сейчас информация о сумме денег на счету того или иного пассажира заносится кассирами на станциях в память iButton. При каждом прикосновении к считывателю сумма, требуемая для проезда, списывается со счета этого пассажира, и одновременно ему разрешается доступ в транспорт через турникет. Теперь городские власти могут забыть об инвестициях в системы контроля пассажиропотока на городском транспорте. Это — пример разумных капиталовложений в аппаратные средства в масштабах целого города.
В нашей стране фирма «Сервистренд» (http://www.servicetrend.ru/All/Vn/Razrabotki/ Lock.html и, возможно, не только она), весьма остроумно применила встраиваемую в компьютер систему контроля доступа к документам финансовой отчетности, основанным на популярном пакете «С1:Предприятие». Без подключения «таблетки» к считывателю доступ к документам предприятия не возможен. Ключ разрешает доступ только к тем разделам отчетности, которые разрешены для его обладателя. Более того, документация может быть зашифрована. В случае, даже если будет произведен «взлом» базы данных, прочесть (расшифровать) информацию без ключа будет невозможно. Аналогичная защита может быть установлена для любых пакетов программ.
Компания Dallas Semiconductor, входящая ныне в корпорацию Maxim Integrated Products, недавно объявила о начале выпуска новых модификаций популярных приборов «Термо-хрон». Каждое из устройств обеспечивает сохранение собранных температурных отчетов в собственной энергонезависимой памяти емкостью 2048 ячеек и позволяет получить гистограмму распределения температурных значений. Многоточечный температурный монито-
ринг может быть выполнен сетью из нескольких устройств DS1921L, каждое из которых регистрирует температурные значения, измеренные через определенные программируемые промежутки времени и сохраняет полученную информацию в собственной энергонезависимой памяти. Конструктивное исполнение и примеры программ взаимодействия сенсора и мастера сети можно найти на сайте MaximDallas по адресу http://pdfserv.maxim-ic. com/arpdf/AppNotes/app198.pdf.
Интересным примером, демонстрирующим на практике возможности однопроводной шины, является проект построения полностью автоматических метеорологических станций, который реализуется фирмой Point Six совместно с Dallas Semiconductor и Texas Weather Instruments. Первые метеосистемы были установлены в штате Техас и успешно испытаны в процессе длительной эксплуатации. Данные со всех сенсоров, регистрируемые каждой из подобных систем, поступают в персональный компьютер и через Интернет транслируются в режиме реального времени на центральный операторский пульт, где происходит изучение информации о погоде региона. В настоящее время проект успешно завершен и Texas Weather Instruments продает готовые полностью автоматические метеостанции, не требующие обслуживания человеком. Описание и принципы работы станции можно найти по адресу http://pdfserv.maxim-ic.com/arpdf/AppNotes/weatherstn.pdf.
Уже несколько лет успешно работает с температурными датчиками фирмы Dallas Semiconductor отечественная фирма «Элин» (http://www.elin.ru/microlan/TH10.htm). Ею накоплен достаточно большой опыт разработки систем контроля температур в промышленных системах, производится целая серия интересных приборов, используемых в технологических процессах на предприятиях и в научных учреждениях. НИМ
Литература
1. Reading and Writing iButtons via Serial Interfaces (http://pdfserv.maxim-ic.com/arpdf/ AppNotes/app74.pdf).
2. Transmitting Data and Power over a One-Wire Bus (http://pdfserv.maxim-ic.com/arpdf/ AppNotes/onewirebus.pdf).
3. Л. Ридико. Имитатор электронных ключей iButton // Схемотехника. 2000. № 1 ( www.dian.ru/pdf/ibutt.pdf).
4. Л. Ридико, В. Лапицкий. Электронный замок с ключами iButton (http://radiotech.by.ru/ Shematic_PCB/DigitalTehniks/touch_mem.htm).
5. В. С. Барсуков. Современные системы контроля доступа (по материалам выставки «Секьюрити-Экспо-98») // Системы безопасности, связи и телекоммуникаций. 1998. № 22.
6. Системы авторизации доступа к «1С: Предприятие» (http://www.servicetrend.ru/All/Vn/ Razrabotki/Lock.html).
7. НТЛ «ЭлИн» и «Термохрон» (http:// www.elin.ru/microlan/TH10.htm).
8. Метеорологические станции (http:// pdfserv.maxim-ic.com/arpdf/AppNotes/ weatherstn.pdf).
е