mirror of
https://github.com/anklimov/lighthub
synced 2026-10-28 11:15:00 +00:00
Frozen copy of the official wiki (lazyhome.ru) used as the audit reference while the repo documentation is brought in line with the code.
78 lines
7.9 KiB
Plaintext
78 lines
7.9 KiB
Plaintext
===== Общая информация =====
|
|
|
|
На разьем X36 контроллера LightHub выведены 12 аналоговых входов и 4 дискретных.
|
|
Аналоговые входы: A0-A11, Дискретные - DA12-DA15
|
|
|
|
Каждый из данных входов защищен от статического электричества и импульсных помех мощным TWS диодом, защищающий вход процессора как от отрицательного напряжения так и от напряжения более 5В
|
|
В случае использования процессорной платы DUE на 3,3 Вольт, автоматически, используется дополнительный диод, ограничивающий потенциал на входе процессора до допустимой величины в 3,5В
|
|
|
|
При необходимости, каждый из данных входов, может быть использован как слаботочный низковольтный выход.
|
|
|
|
===== Аппаратное конфигурирование =====
|
|
|
|
Каждый вход может быть настроен для работы в разных режимах путем запаивания специальных контактных дорожек (перемычек) на плате
|
|
Для каждого входа предусмотрено две перемычки: подтяжка к GND и подтяжка к VCC (в зависимости от типа процессора, 5 или 3,3 В)
|
|
|
|
* Вход 0-10 В: запаяна перемычка GND. В этом случае, образуется делитель, при котором максимум значения ADC соответствует, примерно, 10В входного напряжения. В плавающем режиме на входе низкий уровень.
|
|
|
|
* Датчик протечки: запаяна перемычка VCC. В плавающем режиме, на входе высокий уровень. Между входом и нулем можно подключить проводной датчик протечки. В случае попадания влаги, на входе образуется низкий уровень.
|
|
|
|
* Плавающий высокоомный вход или выход: перемычки не запаяны. При этом вход измеряет напряжение от 0 до VCC, при более высоком напряжении - входит в насыщение, оставаясь при этом электрически защищенным от перенапряжения.
|
|
|
|
Также, к данным входам можно подключать датчики типа DHT22 или внешний CAN адаптер
|
|
Максимальное напряжение на входе - 24В (уточнить)
|
|
|
|
===== Программное конфигурирование =====
|
|
Входы настраиваются в секции in конфигурации контроллера
|
|
|
|
Формат:
|
|
<code>
|
|
"in":{
|
|
"pin#": { "T":<type>, "emit":"<emit>", item:"<item>", "scmd": "ON|OFF|TOGGLE|HALT|REST|XON|XOFF", "rcmd": "ON|OFF|TOGGLE|HALT|REST|XON|XOFF", "map":[<in_min>,<in_max>,<out_min>,<out_max>,<noize>]}
|
|
}
|
|
</code>
|
|
|
|
== Типы входов ==
|
|
|
|
- pin# - номер входа ([[входы_выходы|входы-выходы]] , столбец "MPU PIN #")
|
|
|
|
- <type> - целое число, побитно кодирующее тип входа. (значение по-умолчанию 0):
|
|
|
|
|
|
Для //аналоговых входов//, допустимы следующие значения:
|
|
|
|
* 66 - Аналоговый вход без встроенной подтяжки
|
|
* 64 - Аналоговый вход с подключением встроенного подтягивающего резистора
|
|
|
|
Для //дискретных входов// применимы следующие значения:
|
|
* 0 - дискретный вход с подключением встроенного подтягивающего резистора, **низкий** уровень соответствует значению ON
|
|
* 2 - дискретный вход без подключения встроенного подтягивающего резистора, **высокий** уровень соответствует значению ON
|
|
* 1 - дискретный вход с подключением встроенного подтягивающего резистора, вход меняет значение между ON и OFF по низкому уровню входного напряжения
|
|
* 3 - дискретный вход без подключения встроенного подтягивающего резистора,, вход меняет значение между ON и OFF по высокому уровню входного напряжения
|
|
* 4 - датчик температуры и влажности DHT22
|
|
* 5 - датчик качества воздуха CCS811
|
|
* 6 - датчик температуры и влажности HDC1080
|
|
* 8 - COUNTER вход
|
|
* 16 - UPTIME вход
|
|
|
|
==Действия при срабатывании входа (старый метод настройки) ==
|
|
|
|
- <emit> - имя MQTT топика в который будет выводиться значение при изменениях на входе. Если имя не содержит символа "/",то слева от значения будет автоматически подставлен префикс статусного топика (см. раздел [[работа_с_mqtt]])
|
|
|
|
- <scmd> - значение, передаваемое в топик при переключении входа в состояние ON (по-умолчанию, ON)
|
|
|
|
- <rcmd> - значение, передаваемое в топик при переключении входа в состояние OFF (по-умолчанию, OFF)
|
|
|
|
- <item> - имя канала из секции items которому локально на вход будет передано значение при изменении состояния входа
|
|
|
|
- <map> - параметр, который позволяет преобразовывать диапазон получаемых значений на аналоговом порту к иному диапазону или к дискретным значениям ON/OFF, подавлять шумы.
|
|
Примеры:
|
|
|
|
<code>
|
|
"map":[0,850,0,100] - при получении значения 850 преобразование выдаст на выходе число 100
|
|
"map":[100,500,0,256,10] - при изменении входного значения от 100 до 500 преобразование выдаст на выходе число от 0 до 256, флуктуации в пределах 10 единиц между замерами (после преобразования) , будут игнорироваться.
|
|
При выходе величины изменения между текущим и предыдущим учтенным замером за пределы шумоподавления, шумоподавление отключается для нескольких последовательных замеров.
|
|
"map":[100,500] - при понижении значения ниже 100 будет предприняты действия, аналогично дискретному входу, состояние OFF, при повышении значения выше 500 будет предприняты действия, аналогично дискретному входу, состояние ON
|
|
</code>
|
|
|
|
См. также [[несколько_кнопок_на_одном_входе]] |