1-wire модуль расширения портов

English translation | Память устройства | Библиотека для Arduino | Web-интерфейс устройства

Руководство пользователя

Устройство применяется для решения задач, где необходимо дистанционно управлять нагрузкой, отслеживать состояние концевиков, контролировать соблюдение диапазона сигнала, производить точные АЦП. Сфера применения устройства - КИПиА, метеостанции, "умный дом", СКУД, охранные/пожарные сигнализации.

Описание устройства
Порядок работы с устройством
Принцип работы устройства
Ограничения
Управление устройством
Принципиальная схема устройства
Размеры устройства

Описание устройства

Устройство имеет 5 портов ввода-вывода общего назначения с дополнительной функцией непрерывного мониторинга и установкой флага тревоги при обнаружении заданного логического уровня. 4 порта имеют дополнительную функцию АЦП, для каждого из которых можно индивидуально установить точность преобразования от 1 до 16 бит, относительное или фиксированное опорное напряжение и два пороговых значения, при выходе за которые устройство устанавливает флаг тревоги. 1 порт имеет дополнительную функцию ШИМ с разрешением 8 бит и частотой ~1.5кГц.

Устройство имеет коммуникационный интерфейс 1-wire, по которому производится считывание данных и управление.

Питание устройства может осуществляться от отдельной линии VCC или от локального источника питания. Устройство также поддерживает питание от линии данных DQ (паразитное питание), но при паразитном питании ток, который может обеспечить мастер шины, ограничен несколькими миллиамперами, что накладывает ограничения на ток подключаемых к устройству датчиков или исполнительных устройств.

Порядок работы с устройством

Для начала работы с устройством необходимо:

  1. подключить к устройству датчики и/или исполнительные устройства;
  2. если используется локальное питание, подключить его к контактам GND и VCC разъема 1-wire, соблюдая полярность;
  3. подключить устройство к шине 1-wire: подключить линии GND и DQ и, если используется питание от 1-wire, линию VCC;
  4. проверить, что идентификатор нового устройства появился на шине;
  5. устройство готово к работе, можно выполнять цикл работы с устройством.

Типичный цикл работы с устройством при измерениях или отправке команд:

  1. проверить состояние флага POR (сброс по включению питания), если установлен, записать на устройство требуемую конфигурацию и очистить флаг POR;
  2. отправить команды (изменение состояния портов, запуск АЦП), если необходимо;
  3. прочитать состояние/результаты, если необходимо;
  4. сделать паузу и перейти к п.1.

Типичный цикл работы с устройством при контроле аналогового сигнала:

  1. получить список всех устройств с тревогой, если устройство не в списке, перейти к п.4;
  2. проверить состояние флага POR (сброс по включению питания), если установлен, записать на устройство требуемую конфигурацию (пороговые значения);
  3. очистить все флаги тревоги;
  4. отправить команду запуска АЦП индивидуально всем требуемым устройствам или широковещательно;
  5. получить список всех устройств с тревогой, если устройство не в списке, перейти к п.9;
  6. проверить состояние флага POR, если установлен, перейти к п.9;
  7. прочитать флаги тревоги, результаты АЦП и обработать;
  8. очистить все флаги тревоги;
  9. сделать паузу и перейти к п.1.

Типичный цикл работы с устройством при мониторинге логического уровня портов:

  1. получить список всех устройств с тревогой, если устройство не в списке, перейти к п.5;
  2. проверить состояние флага POR (сброс по включению питания), если установлен, записать на устройство требуемую конфигурацию (разрешения мониторить порты и отслеживаемые логические уровни портов) и перейти к п.4;
  3. прочитать флаги тревоги и обработать;
  4. очистить все флаги тревоги;
  5. сделать паузу и перейти к п.1.

Принцип работы устройства

У устройства есть 14 флагов тревоги, при установке хотя бы одного из которых, устройство будет отвечать на запросы поиска устройств с тревогой. Один из флагов тревоги POR (power-on reset) служит для сигнализации, что устройство перезагружалось по включению питания и его настройки были сброшены. Все флаги тревоги доступны пользователю для чтения и изменения.

Устройство непрерывно мониторит логические уровни заданных портов и при совпадении уровня с заданным значением устанавливает флаг тревоги логического уровня для соостветствующего порта. Устройство только устанавливет флаги тревоги логического уровня, но никогда не сбрасывает. Пользователь может только читать и сбрасывать флаги тревоги логического уровня.

АЦП запускаются только при подаче команды на запуск пользовтелем, и никогда не запускаются самостоятельно устройством. Можно запустить АЦП для списка выбранных портов (из четырех возможных), АЦП производится последовательно для каждого запрошенного порта в порядке возрастания его номера. Результат АЦП, независимо от запрошенной точности, всегда 16-битное значение (старший бит результата всегда сдвинут в старший бит слова, младшие биты обнулены). По окончании преобразования для порта, результат АЦП записывается в память устройства и производится сравнение его старшего байта с пороговыми значениями, флаг тревоги высокого / низкого сигнала устанавливается только если соответствующее сравнение было запрошено и значение выходит за пороговое, в противном случае флаг сбрасывается (в отличие от флага тревоги логического уровня, аналоговые флаги тревоги могут быть как установлены, так и сброшены устройством). Если для порта не выполнялось АЦП, то его аналоговые флаги тревоги, так же как и результат последнего преобразования, остаются без изменений. Результаты АЦП и аналоговые флаги тревоги доступны для чтения и записи в памяти устройства, они будут перезаписаны устройством только при следующем АЦП для данного порта.

Установка режима работы порта на вывод логического 0 или 1 или на вывод ШИМ сигнала не отключает возможность чтения и мониторинга логического уровня порта и не отключает возможность АЦП.

Ограничения

На любых выводах устройства нельзя допускать напряжения больше 5.5В или меньше -0.5В относительно GND. Выводы DQ и VCC имеют защиту от импульсных скачков напряжения (до нескольких киловольт в течение нескольких микросекунд), выводы портов и вывод VCC со стороны портов не имеют никакой защиты.

Устройство работает как со стандартным напряжением интерфейса 1-wire (5В), так и с пониженным, рабочее напряжение DQ или VCC допустимо в пределах 3 .. 5.5В. Напряжение DQ не должно превышать VCC более чем на 0.5В, напряжение VCC не должно превышать DQ более чем на 1В.

Вывод VCC со стороны портов может обеспечить ток до 150мА. Напряжение на выводе VCC со стороны портов используется как опорное напряжение АЦП и как напряжение питания датчиков/исполнительных устройств, это напряжение ниже напряжения на шине 1-wire (от большего из VCC или DQ) примерно на 0.4В.

При работе на вывод логической 1 (высокий уровень) порты P0, P2, P3 могут обеспечить выходной ток до 10мА, порт P1 - до 12мА, P4 - до 100мкА, при работе на вывод логического 0 (низкий уровень) порты P0, P2, P3 могут обеспечить входной ток до 10мА, порт P1 - до 18мА, P4 - до 3мА.

Управление устройством

Доступ ко всем настройкам и состоянию устройства производится путем обращения к страницам памяти 1-wire устройства.

Для интерактивного управления можно использовать web-интерфейс, который работает со страницами памяти и является посредником для доступа к состоянию и настройкам. Для доступа через web-интерфейс должен быть запущен процесс owhttpd, который может работать с мастером шины 1-wire либо напрямую, либо обращаясь к owserver.

На странице web-интерфейса необходимо ввести IP-адрес и порт, на котором работает owhttpd, после ввода отобразится список идентификаторов всех найденных на шине 1-wire устройств. При переходе к выбранному устройству отобразится страница с его текущими параметрами.

После изменения настроек на странице, их необходимо сохранить на устройство (кнопка Save). Опция очистить все флаги тревоги (clear all alarm flags) позволяет быстро очистить все 14 флагов тревоги. Кнопка Перечитать (Reload) читает текущее состояние и настройки с устройства и обновляет информацию на странице. Если была выбрана опция непрерывно (continuous), обновление будет происходить в цикле, пока опция не будет отключена. Кнопка Сконвертировать аналоговый сигнал (Analog convert) отправляет на устройство команду на запуск АЦП для всех четырех портов, результаты АЦП устройство помещает в память, после чего выполняется чтение памяти устройства и обновление информации на странице. Опция непрерывно (continuous) для кнопки Analog convert работает по тому же принципу.

Краткое описание настроек и состояния:

Принципиальная схема устройства

Размеры устройства

Единицы измерения - миллиметры
Символмин.ном.макс.
A13.7
A13.5
B36.136.3
C20.821.0
D1.61.7
H115.24
H230.48
d3.03.1