• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос Прошу проверить схему 8-и канального реле через расширитель I2C

spalex

Member
Добрый день уважаемые форумчане! Проектирую свою систему умного дома одним из ключевых узлов которой, является блок управления реле. Т.к. одной из задач является совершенствование своих знаний в схемотехнике, стараюсь обходится своими силами.
Итак, разработал и распаял на макетной плате с учетом размещения всего хозяйства в DIN корпусе схему управления 8-ю линиями внешнего света. Логика работа такая, что каждую линию можно включить как отдельно со смартфона, так и выключателем. Схема рабочая, но прошу проверить ее на правильность дополнительных элементов (R1 R2 R3 R4 R5 R6 C1), а точнее
:
1). Правильно ли подключены резисторы R1 R2 . Wemos питается через microUSB, однако во всей схеме (в том числе и для питания PCF8574T, используется 3.3В. Правильно ли я подтягиваю i2C шину именно к 3.3В ? 5В у меня используется только для питания реле.
2). Конденсатор C1. Читал, что по правилам хорошего тона, использовать его в цепи питания микросхем. Нужно ли его использовать в разрыв между землей и питанием для каждой микросхемы или достаточно одного. Правильный ли номинал.
3). R3 R4 R5 R5 , правильный ли номинал и схема включения?
4). Обязательно ли подтягивать все ноги микросхемы PCF8574T A0 A1 A2 к земле , или можно оставить их спокойно висящими в воздухе?

Схема всего модуля такая (все пока распаяно на макетке, поэтому дорожками не озадачивался, пока важно правильность и наличие элементов):
Schematic_rele-pcf_Sheet-1_20190413223844.png
Модуль в сборе выглядит так:
3.jpg
Сама плата цправления:
2.jpg
1.jpg

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

nikolz

Well-known member
Добрый день уважаемые форумчане! Проектирую свою систему умного дома одним из ключевых узлов которой, является блок управления реле. Т.к. одной из задач является совершенствование своих знаний в схемотехнике, стараюсь обходится своими силами.
Итак, разработал и распаял на макетной плате с учетом размещения всего хозяйства в DIN корпусе схему управления 8-ю линиями внешнего света. Логика работа такая, что каждую линию можно включить как отдельно со смартфона, так и выключателем. Схема рабочая, но прошу проверить ее на правильность дополнительных элементов (R1 R2 R3 R4 R5 R6 C1), а точнее
:
1). Правильно ли подключены резисторы R1 R2 . Wemos питается через microUSB, однако во всей схеме (в том числе и для питания PCF8574T, используется 3.3В. Правильно ли я подтягиваю i2C шину именно к 3.3В ? 5В у меня используется только для питания реле.
2). Конденсатор C1. Читал, что по правилам хорошего тона, использовать его в цепи питания микросхем. Нужно ли его использовать в разрыв между землей и питанием для каждой микросхемы или достаточно одного. Правильный ли номинал.
3). R3 R4 R5 R5 , правильный ли номинал и схема включения?
4). Обязательно ли подтягивать все ноги микросхемы PCF8574T A0 A1 A2 к земле , или можно оставить их спокойно висящими в воздухе?

Схема всего модуля такая (все пока распаяно на макетке, поэтому дорожками не озадачивался, пока важно правильность и наличие элементов):
Посмотреть вложение 7342
Модуль в сборе выглядит так:
Посмотреть вложение 7339
Сама плата цправления:
Посмотреть вложение 7340
Посмотреть вложение 7341

Заранее признателен за критику и поправки. Хочется сделать не просто рабочее устройство, а правильно рабочее. Хотя я и прогер по профессии, стараюсь вникнуть и разобраться в основы схемотехники.
для справки, все кнопки можно подключить на один пин даже на RST. я на форуме это рассказывал.
В результате можно и без расширителей все сделать
 

CodeNameHawk

Moderator
Команда форума
Питание на реле напрямую от блока питания, не надо пускать его через вемос.
Возле PCF параллельно питанию по конденсатору 0.1 мкф.
Резисторы возле кнопок я бы поставил на 1 ком и если понадобиться конденсатор параллельно кнопке 0.1 мкф.
 

Bydenkin

Member
Не вдаваясь в подробности ... делал бы не так совсем. Но - сколько конструкторов ... столько и конструкций.
1. Ручное включение света кнопкой должно работать при выключенной (отсутствующей) автоматике. Для того оно и ручное.
2. Реле + микроконтроллер это как железная оправа для брильянта! Конечно же копеечные симисторы + оптроны куда как лучшее решение, чем реле 19 века. Отдельное питание не требуется. Зарядка от телефона решит проблемы питания МК (ESP). Гальваническая развязка надёжная. При некоторой ловкости даже можно не создавать радиопомехи при включении. Плавный пуск и гашение. Бесшумность опять же.
3. Подключение по I2C плохо переносит длинные связи (провода). Следовательно - схема должна находиться невдалеке (100 ,,, 200 мм) от микроконтроллера. Может проще парочку 595 сдвиговых регистров использовать? Проблемы связи будут решены сами собой.
***
И ещё много чего.
 

spalex

Member
Питание на реле напрямую от блока питания, не надо пускать его через вемос.
Возле PCF параллельно питанию по конденсатору 0.1 мкф.
Резисторы возле кнопок я бы поставил на 1 ком и если понадобиться конденсатор параллельно кнопке 0.1 мкф.
Спасибо, поправил. Питание действительно я планировал отдельно, для этого купил блок на DIN рейку на 5В .
А конденсаторы все-таки должны быть каждый на свою микросхему? И почему 0,1 мкф ? По каким соображениям выбирается номинал? По некоторым схемам смотрел, там стоят большей емкости с теми же микросхемами.

Schematic_rele2.png

для справки, все кнопки можно подключить на один пин даже на RST. я на форуме это рассказывал.
В результате можно и без расширителей все сделать
Да, можно, но мне проще и понятнее так. Про схему полива почитал, познавательно. Наверное тоже переделаю под MCP 23017 , просто собирал из того, что под рукой было.

Не вдаваясь в подробности ... делал бы не так совсем. Но - сколько конструкторов ... столько и конструкций.
1. Ручное включение света кнопкой должно работать при выключенной (отсутствующей) автоматике. Для того оно и ручное.
2. Реле + микроконтроллер это как железная оправа для брильянта! Конечно же копеечные симисторы + оптроны куда как лучшее решение, чем реле 19 века. Отдельное питание не требуется. Зарядка от телефона решит проблемы питания МК (ESP). Гальваническая развязка надёжная. При некоторой ловкости даже можно не создавать радиопомехи при включении. Плавный пуск и гашение. Бесшумность опять же.
3. Подключение по I2C плохо переносит длинные связи (провода). Следовательно - схема должна находиться невдалеке (100 ,,, 200 мм) от микроконтроллера. Может проще парочку 595 сдвиговых регистров использовать? Проблемы связи будут решены сами собой.
***
И ещё много чего.
1. Логично. Но мне все же хотелось уйти от 220В выключателей, которые занимают много места. Останется в щитке место, запаралелю через АПшки. Напомню, данное реле у меня будет управлять внешним светом 8 линий по всему участку. Как вариант, наверное, сделаю возможность включаться всем линиям сразу с одного АП. Чтобы в случае поломки была возможность включить сразу весь свет. Спасибо за подсказку, я про это изначально не подумал.
2). Так и сделаю! Пока это все для теста. Финальный вариант будет на твердотельных реле на своей плате. Просто пока немного побаиваюсь связываться с силовой частью в своей схемотехнике.
3). У меня там просто еще много чего будет. Управление диммерами, радиаторами отопления, гребенками теплого пола, термодатчики, датчики движения. Сейчас все это активно разводится по дому , потому больше заботят проблемы проводов и размеров корпусов, их размещение в щитке. i2C очень удобна для программирования. Если будут проблемы, заюзаю какую-то другую шину.
Стараюсь делать так, чтобы иметь потом пространство для маневров. Например все выключатели и линии света, которые будут управляться , заводятся в щиток и коммутироваться будут уже в нем. Электроклапана радиаторов и гребенки подключаются звездой и тоже в щит. Для слаботочки у меня отдельный щиток, должно все поместиться :) .
В крайнем случае психану, поставлю готовые модули, но цель у меня повысить свои навыки, получить опыт.
 

nikolz

Well-known member
Спасибо, поправил. Питание действительно я планировал отдельно, для этого купил блок на DIN рейку на 5В .
А конденсаторы все-таки должны быть каждый на свою микросхему? И почему 0,1 мкф ? По каким соображениям выбирается номинал? По некоторым схемам смотрел, там стоят большей емкости с теми же микросхемами.

Посмотреть вложение 7344


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


1. Логично. Но мне все же хотелось уйти от 220В выключателей, которые занимают много места. Останется в щитке место, запаралелю через АПшки. Напомню, данное реле у меня будет управлять внешним светом 8 линий по всему участку. Как вариант, наверное, сделаю возможность включаться всем линиям сразу с одного АП. Чтобы в случае поломки была возможность включить сразу весь свет. Спасибо за подсказку, я про это изначально не подумал.
2). Так и сделаю! Пока это все для теста. Финальный вариант будет на твердотельных реле на своей плате. Просто пока немного побаиваюсь связываться с силовой частью в своей схемотехнике.
3). У меня там просто еще много чего будет. Управление диммерами, радиаторами отопления, гребенками теплого пола, термодатчики, датчики движения. Сейчас все это активно разводится по дому , потому больше заботят проблемы проводов и размеров корпусов, их размещение в щитке. i2C очень удобна для программирования. Если будут проблемы, заюзаю какую-то другую шину.
Стараюсь делать так, чтобы иметь потом пространство для маневров. Например все выключатели и линии света, которые будут управляться , заводятся в щиток и коммутироваться будут уже в нем. Электроклапана радиаторов и гребенки подключаются звездой и тоже в щит. Для слаботочки у меня отдельный щиток, должно все поместиться :) .
В крайнем случае психану, поставлю готовые модули, но цель у меня повысить свои навыки, получить опыт.
ну если для опыта, то посмотрите еще расширение портов с помощью сдвигового регистра с защелкой.
 

CodeNameHawk

Moderator
Команда форума
А конденсаторы все-таки должны быть каждый на свою микросхему?
Желательно на каждую, близко к выводам питания.

И почему 0,1 мкф ? По каким соображениям выбирается номинал?
Керамический конденсатор, 0.1 мкф хватает, чтобы гасить выбросы микросхемы. (Просто из опыта)
 

Bydenkin

Member
@spalex
Электричества не надо бояться! Электричество надо уважать!
Вот Симистор + Arduino самый простой, дешёвый (2$ за 10 комплектов), надёжный и безопасный способ управлять "силой". И в отличие от готовых твёрдотельных реле можно применить общий радиатор, приклеить LM35 для определения мощности и выключения (ограничения мощности) при перегрузке.
 

CodeNameHawk

Moderator
Команда форума
, надёжный и безопасный способ управлять "силой".
Для этой схемы, включения лампочек, лучше подойдут реле.
приклеить LM35 для определения мощности и выключения (ограничения мощности) при перегрузке.
LM35 не мерит мощность, а от перегрева может и не успеть спасти.

Вывод выбора адреса А2, не должен висеть без подтяжки.
 
Последнее редактирование:

Bydenkin

Member
@CodeNameHawk
LM35 от короткого замыкания не спасёт. А от перегруза - самое то. Быстродействия достаточно. И мощность меряет ... скетчем. И не в кВт, а в процентах от допустимой. Только это отдельная тема.
А чем реле лучше? Для десятка реле нужен приличный блок питания. Опять же помехи для МК неизбежны.
 

Bydenkin

Member
@CodeNameHawk
... и управлять оптроном также просто, как и обычным светодиодом.
Не знаешь как в скетче обработать изменение температуры и перевести в нагрузку? Почитай букварики.
 

spalex

Member
@spalex
Электричества не надо бояться! Электричество надо уважать!
Вот Симистор + Arduino самый простой, дешёвый (2$ за 10 комплектов), надёжный и безопасный способ управлять "силой". И в отличие от готовых твёрдотельных реле можно применить общий радиатор, приклеить LM35 для определения мощности и выключения (ограничения мощности) при перегрузке.
А я и уважаю. :) Потому без фундаментального изучения вопроса в силовую часть не полезу. Теория там не сложная, а вот на практике нужно много чего учесть, да и цена ошибки высока. Так что пока мой путь МК+шилды. Купил себе для теста 4-х канальное твердотельное реле.
ttr.jpg (на OMRON G3MB-202P 2A)
Буду пробовать.

Кстати, есть еще одна задача, которую мне нужно решить. У меня 5 линий света будет димироваться.
Купил 5 штук Robodyn AC Light Dimmer Module . Собрал вот такой блок:
dimmer.jpg
Хочу тоже его подключать по I2C к основному контроллеру. Проблема в том, что на каждый димер по 2 ноги, одна из которых ZC (индикация перехода через 0). Вот думаю, как правильно эту задачку решить.
Тут 2 пути: использовать расширитель портов MCP23017/PCF8574T , или засунуть в корпус какую-то ардуинку и управлять через нее.
Пробовал решить задачу в лоб, через имеющиеся у меня PCF8574T , но , насколько я понял, она не вытягивает по току PWM вход (кстати, может MCP23017 вытянет?) , надо делать через транзистор. Но есть у меня еще одно подозрение, что использование платы расширителя может повлиять на частоту диммирования. Тут , в идеале, делать этот переход через 0 на железе, а это, к сожалению, не мой уровень. А готовой схемы что-то не могу найти. Есть готовые изделия, но их ждать долго, да и , все же, хочется самому разобраться. Пока , наверное, заюзаю ардуину для управления этими диммерами, в slave i2c режиме. А там, видно будет, может закажу готовое или схему найду.
 

nikolz

Well-known member
А я и уважаю. :) Потому без фундаментального изучения вопроса в силовую часть не полезу. Теория там не сложная, а вот на практике нужно много чего учесть, да и цена ошибки высока. Так что пока мой путь МК+шилды. Купил себе для теста 4-х канальное твердотельное реле.
Посмотреть вложение 7346
Буду пробовать.

Кстати, есть еще одна задача, которую мне нужно решить. У меня 5 линий света будет димироваться.
Купил 5 штук Robodyn AC Light Dimmer Module . Собрал вот такой блок:
Посмотреть вложение 7345
Хочу тоже его подключать по I2C к основному контроллеру. Проблема в том, что на каждый димер по 2 ноги, одна из которых ZC (индикация перехода через 0). Вот думаю, как правильно эту задачку решить.
Тут 2 пути: использовать расширитель портов MCP23017/PCF8574T , или засунуть в корпус какую-то ардуинку и управлять через нее.
Пробовал решить задачу в лоб, через имеющиеся у меня PCF8574T , но , насколько я понял, она не вытягивает по току PWM вход (кстати, может MCP23017 вытянет?) , надо делать через транзистор. Но есть у меня еще одно подозрение, что использование платы расширителя может повлиять на частоту диммирования. Тут , в идеале, делать этот переход через 0 на железе, а это, к сожалению, не мой уровень. А готовой схемы что-то не могу найти. Есть готовые изделия, но их ждать долго, да и , все же, хочется самому разобраться. Пока , наверное, заюзаю ардуину для управления этими диммерами, в slave i2c режиме. А там, видно будет, может закажу готовое или схему найду.
А у Вас не возникала мысль, что сеть у вас одна и переход через ноль один и тот же хоть у 100 диммеров?
 

spalex

Member
А у Вас не возникала мысль, что сеть у вас одна и переход через ноль один и тот же хоть у 100 диммеров?
Да?)))))) Често говоря вообще слабо понимаю физику данного процесса. :) Я ж прогер))) Это все меняет))) Пошел пробовать ...

Кстати, вот в готовом варианте i2C dimmer модуля , как раз используется PCF8574T + Arduino
s-l1600.jpg
 

nikolz

Well-known member
Да?)))))) Често говоря вообще слабо понимаю физику данного процесса. :) Я ж прогер))) Это все меняет))) Пошел пробовать ...

Кстати, вот в готовом варианте i2C dimmer модуля , как раз используется PCF8574T + Arduino
Посмотреть вложение 7347
можно использовать сдвиговый регистр с защелкой на 8 бит
Множим выходы с помощью сдвигового регистра 74HC595 | Аппаратная платформа Arduino
сигнал пересечения нуля берете один с любого диммера
в результате надо 5 пинов на вывод и 1 пин на ввод на пин ESP
 
Сверху Снизу