141

Контроллер отопления дома на Arduino

Начну с предыстории. Однажды мои родители, твердо решили жить в своём доме за городом. Недолго думая приобрели участок недалеко от города и в течении года там был построен дом. Но так как, мои родители всегда жили в городской среде, и переезд не обернулся разочарованием я решил, по мере своих возможностей, автоматизировать некоторые процессы управления дома и со временем превратить его в подобие "умного дома".

Контроллер отопления дома на Arduino Arduino, Своими руками, Умный дом, Отопление, Длиннопост

Задумка амбициозная, объем работы колоссальный поэтому буду делать все поэтапно, и в конце все свяжу все в единую систему. Первым этапом будет отопление. Управлять им будет Arduino, это конечно не самый надёжный вариант, но для начала самое то. Тему надёжности я затрону отдельно.


Теперь к техническому вопросу. Газ не проведён, зато есть электричество - 3 фазы, поэтому отопление будет электрическим. Все нагревательные элементы равномерно распределим по фазам, чтобы избежать перекоса фаз. Зимы лютые бывают, в связи с этим мощность ТЭН должна быть с запасом, ну мало ли что.


Все должно работать так: измеряем температуру воздуха в помещении, сравниваем с заданной, и в зависимости от разницы на определённый промежуток времени включаем ТЭНы. Вроде бы все просто, но это не совсем так) трудности будем решать в программе, а для начала о железе.


Для управления отоплением выбрал плату Arduino, сердцем которой является восьми битный микроконтроллер ATmega328р, его с запасом хватит для данной задачи.


Для измерения температуры датчики: Dallas DS18B20 - это цифровые датчики температуры, их можно множество кидать на общую шину OneWire состоящего из одного провода (на датчик нужно подвести землю, питание по желанию:)), и с неплохой точностью измерять температуру. У каждого датчика есть свой уникальный адрес, и обращаясь по адресу получаем данные нужного датчика. Это очень удобно, и экономит порты контроллера.

Контроллер отопления дома на Arduino Arduino, Своими руками, Умный дом, Отопление, Длиннопост

Ввод и вывод информации осуществит LCD дисплей 16х2 символа, соединенный через i2с и 3 тактовые кнопки соединенные через делитель напряжения, для экономии пинов, и воткнутые в аналоговый вход. Почему именно три? Что бы сделать интуитивно понятное меню. Клиентоориентированность во плоти:).


Для управления нагрузкой нужно реле,электромеханические реле я посчитал не практичным и для тестирования из поднебесной заказал твердотельное реле, основой которой является симистор, который по факту рассчитан на ток вдвое меньше, чем написано на корпусе реле. Но в дальнейшем сделаю плату на которой распаяю более мощные симисторы BTA41-600B в паре с мс moc3361 которая внутри имеет оптопару для гальванической развязки, индикатор прохождения тока через ноль, и симисторный выход - полный фарш). А так же добавятся измерительные трансформаторы тока.

Для сравнения симисторы BTA41-600B в массивном корпусе TOP3 в сравнении с TO220 (Такой стоит в китайском реле)

Контроллер отопления дома на Arduino Arduino, Своими руками, Умный дом, Отопление, Длиннопост

В итоге все выглядит вот так подключил тепловентилятор на 2 кВт задал температуру, регулирует все отлично). Пока выглядит все на соплях, но для тестирования и отладки программы пойдет.

Контроллер отопления дома на Arduino Arduino, Своими руками, Умный дом, Отопление, Длиннопост

На этом пока все, в дальнейшем планирую написать про программу, изготовление платы и прочие модули, спасибо что дочитали)

Вы смотрите срез комментариев. Показать все
0
Автор поста оценил этот комментарий

Гуглите на тему "ПИД управление". Без него скачки температуры будут значительные.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

ПИД реализован само собой

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку