Как правило домашняя автоматизация начинается с климата, поэтому вместе с контроллером MegaD я заказал I2C датчики температуры/влажности HTU21D и датчики температуры/влажности/атмосферного давления BME280. Датчики маленькие и с удобными винтовыми клеммами для монтажа.
Для подключения I2C-датчиков к MegaD необходимо использовать цифровые порты. Это либо порты 4,5,7,8,10,11 клеммника XT2 на контроллере
Либо любые порты исполнительных модулей 14-IN и 14-IOR. Для работы датчика необходимо 4 провода: земля, питание +3,3В и линии передачи данных SDA и SCL. Таким образом для подключения I2C-датчика нужно задействовать два порта контроллера или исполнительного блока. Перемычки на портах исполнительных блоков необходимо переключить в цифровой режим: 14IN - перемычка внизу, 14IOR - перемычка слева.
После аппаратной настройки, необходимо настроить порты в интерфейсе контроллера. Порт, к которому подключена клемма SCL переводим в тип I2C, режим SCL, порт, к которому подключена клемма SDA в тип I2C, режим SDA, указываем порт SCL на котором находится наш датчик и тип подключенного датчика.
При правильной настройке и подключении мы увидим показания датчика.
Теперь нужно настроить получение показаний датчиков intraHouse. Несмотря на то, что для нас это единое физическое устройство - для intraHouse это два отдельных датчика (или три в случае с BME280).
Создаем устройства для каждого канала. Переходим в устройства и добавляем датчик температуры:
По аналогии добавляется датчик влажности. Для датчика атмосферного давления нет шаблона, но добавить его можно с помощью шаблона "Датчик универсальный аналоговый":
Для получения показаний необходимо создать отдельный канал для каждого датчика. Заходим в плагин MegaD, переходим в список каналов и создаем новый канал:
Канал нумеруется соответственно номерам портов на MegaD, при наличии нескольких датчиков на порту, они нумеруются последовательно после символа "_". Тип порта - выбираем аналоговый вход, в строке «Устройство» выбираем предварительно созданное устройство, период опроса - это интервал времени для опроса данного датчика сервером intraHouse. Сервер опрашивает все устройства на порту за одну команду, поэтому стоит указывать период опроса только для одного устройства на порту во избежание слишком частых опросов. Строку запроса состояния и вкладку "Обработка" оставляем без изменений.
После этого можно добавить устройства на мнемосхему:
Оригинал статьи размещен здесь: https://vk.com/my_smart_home