1-Wire

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 16:34, 21 июня 2016.
Open book.svg Авторство
М.С. Смольникова
Согласовано: 04.04.2016

1-Wire — двунаправленная шина связи для устройств с низкоскоростной передачей данных (обычно от 15,4 Кбит/с до 125 Кбит/с). Была разработана компанией Dallas Semiconductor в конец 90-х, и была призвана наладить полудуплексную связь всего по одному сигнальному проводу. Также возможны варианты использования паразитного питания по линии данных (потому что во все микросхемы 1-Wire встроен конденсатор номиналом 800 пФ).

Для связи с устройством 1-Wire требуется всего 2 провода, один сигнальный, второй – заземление. Компания Dallas (и позже купившая ее Maxim) выпускают много устройств с шиной 1-Wire. Это термометры, календари, датчики, память. Отдельно следует отметить электронные таблетки iButton успешно используемые в устройствах идентификации. Многие микроконтроллеры не реализуют аппаратную поддержку этой шины. Выходом является установка отдельного чипа – драйвера шины.

Достоинства

  1. для связи с устройством требуется лишь два провода: на данные и заземление.
  2. большое расстояние передачи. Расстояние достигает 300 м при соблюдении ряда условий: применение специального кабеля IEEE1394 (Firewire), использование специального драйвера сети (активная подтяжка с учётом тока в линии), использование топологии «общая шина» с единым стволом (не свободная топология);
  3. изменяемость конфигурации любой сети 1-Wire в процессе её работы;
  4. простое решение адресуемости абонентов;
  5. несложный протокол;
  6. простая структура линии связи;
  7. малое потребление компонентов;
  8. исключительная дешевизна всей технологии в целом.

Принцип работы шины 1-wire

Питание подводится по тому же проводу, что и данные (т.н. паразитное питание). Провод через подтягивающий резистор (5 кОм, но может быть и ниже, вплоть до 1 кОм) подключен к источнику напряжения 5 Вольт. Устройства реализуют схему с открытым стоком, замыкая линию на «землю». Длительность низкого уровня и определяет передаваемые данные. Для обеспечения питания схем во время передачи данных, устройства содержат внутренний конденсатор 800пФ, который заряжается, пока на шине нет активности.

На шине может быть параллельно подключено несколько ведомых устройств, но ведущее устройство («мастер») должно быть только одно. Такая сеть 1-wire устройств имеет название MicroLan. Обмен инициируется мастером (кроме некоторых специальных случаев, когда используются прерывания). Схема с открытым коллектором реализует «монтажное И», что позволяет в автоматическом режиме перечислить подключенные к шине устройства.

Подтягивающий резистор должен успевать поднять напряжение на шине до высокого логического уровня, что накладывает ограничение на общую электрическую ёмкость сети, зависящую от её длины и количества подключенных устройств. Вместе с тем, спецификация указывает минимальный ток, равный 4мА, при котором устройства должны принять при выставлении низкого уровня на шине. Таким образом, подтягивающий резистор должен быть номиналом не менее 1кОма. При таких параметрах на одну шину может быть подключено до 30 устройств, при длине шины более 200 метров. Некоторые устройства могут требовать для совершения определённых операций более высокого значения тока на линии, чем то может обеспечить подтягивающий резистор. При наличии таких устройств, в схему должен быть введён подключаемый «сильный» подтягивающий резистор, обеспечивающий питание таким устройствам (на схеме обозначено синим цветом). Во время подключения такого подключения, активность на линии не допускается. В каждом устройстве 1-wire жёстко зашиты уникальная восьмибайтная последовательность, однозначно идентифицирующая конкретный экземпляр устройства. Эта последовательность включает в себя:

  • 1 байт «код семейства» определяющий тип устройства (коды с 0 по 127 зарезервированы для устройств Maxim Integrated/Dallas Semiconductor, коды 128 и выше вкупе с частью серийного номера – для сторонних производителей);
  • 6 байт – серийный номер
  • и 1 байт – контрольная сумма, рассчитанная на основе кода семейства и серийного номера.
Схема подключения сети устройств 1-Wire

Применение

Технология iButton

Ключ IButton

Каждая микросхема 1-Wire имеет уникальный номер. Это позволяет использовать устройства iButton в качестве простых идентификаторов личности, например, в системах контроля и управления доступом (СКУД). В этом качестве они успешно конкурируют с бесконтактными карточками, использующими технологию RFID. Имеются устройства iButton с поддержкой криптографии, что позволяет создавать на их основе защищённые хранилища небольших объёмов данных или средства сильной аутентификации. Такие устройства могут конкурировать со смарт-картами в некоторых применениях.

Датчики измерения

Датчик температуры

Устройства 1-Wire очень удобны для измерений. Не требуется отдельного питания, возможно подключить по одному проводу целую гирлянду разнообразных датчиков. Система таких датчиков легко контролируется на предмет аварий. Записи о калибровках могут храниться прямо в датчиках. Измерение температуры — одно из самых массовых применений 1-Wire устройств. В сельском хозяйстве применяется для многоточечного контроля температуры теплицах, ульях, элеваторах, инкубаторах, овощехранилищах. Популярны домашние метеостанции, подключаемые по этому интерфейсу.

Метеостанции

Метеостанция

Другим примером, наглядно демонстрирующим на практике возможности технологии однопроводной шины, является проект построения полностью автоматических метеорологических станций (1-Wire Weather Station (1-WWS)), который разрабатывался совместно фирмами PointSix, AAG Electronica, Dallas Semiconductor и Texas Weather Instruments. Технология обеспечивала контроль сигналов от датчиков: барометрического давления, разрядов молнии, количества осадков на поверхности, солнечной активности, влажности почвы и т.д. Данные со всех сенсоров, регистрируемые каждой из подобных систем, поступали в персональный компьютер и через Интернет транслировались в режиме реального времени на центральный операторский пульт. Там выполнялись прием, обработка и архивация результатов о погоде всего региона, получаемых благодаря анализу информации от нескольких территориально рассредоточенных станций.

Умный дом

Система "умного дома"

«Умный дом» — это комплекс автоматики, который управляет инженерными системами жилища. Например, освещением, отоплением, вентиляцией, кондиционированием, энергоснабжением, водоснабжением, электроприводами, оборудованием пожарных и охранных систем и прочим. Температура — это часто основа и мерило комфорта любого жилища, а в чрезвычайной ситуации — индикатор пожара. На сегодняшний день для многоточечного контроля температуры ничего лучше применения однопроводных термометров по соотношению функциональность/цена еще не придумано. Поэтому в абсолютном большинстве проектов направления «Умный дом» именно датчики DS18#2# чаще всего обеспечивают функции термометров. А это часто тянет за собой применение и других компонентов с 1-Wire-интерфейсом: ключи для переключения силового оборудования, АЦП для контроля других параметров микроклимата, регистры для управления различным бытовым оборудованием и т.д. Хотя подход, связанный с подстройкой всех подсистем автоматизации под однопроводную магистраль управления совсем необязателен, систем типа «Умный дом» (если они делаются за разумные деньги), где, так или иначе, присутствуют 1-Wire-решения, сегодня достаточно много, если не большинство.

Маркировка оборудования

Микросхемы 1-Wire популярны для маркировки и хранения параметров дополнительного оборудования к установкам. Например, медицинские и лабораторные приборы, использующие в работе множество различных сменных головок и датчиков, снабжаются микросхемой. При подключении прибор сразу распознаёт сменную головку и корректно устанавливает режим работы. Аналогично может контролироваться наработка узлов с ограниченным ресурсом.

Другие применения

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

Ссылки