Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы

Солнечный коллектор для умеренного климата

Непрочитано 18.11.2024, 14:28  
VASSILIJ
Временная регистрация
 
Регистрация: 15.04.2007
Сообщений: 71
Сказал спасибо: 7
Сказали Спасибо 6 раз(а) в 5 сообщении(ях)
VASSILIJ на пути к лучшему
По умолчанию Солнечный коллектор для умеренного климата

Доброго всем утра (как говорится - как проснулся). Изначально семейная просьба была сделать в бане летний душ. Простая бочка на крыше мне показалась слишком простой и неэффективной. Заводские варианты имеют настолько шифрованные показания, что и инструкция не поможет. Так появилась Идея. Позже она была развита и дополнена «более расширенными» функциями.

Пишу по - горячему, так как на данный момент его ещё нет в железе, а ведётся усиленная доработка программы (скорее поиск возможных багов). Уже сейчас код можно считать написанным, но нужен сторонний взгляд на проект и независимое мнение. Наверняка я мог что-то забыть или где-то есть досадный баг. Есть надежда реализовать уже следующим летом. Сразу говорю, я не программист, используется GPT, хотя без постоянной проверки, обдумывания, чёткого описания - тупит весьма сильно. До разума ему - как до Луны через пояс Койпера.

Основные компоненты: двухскоростной насос, бойлер с нагревателем, ардуино нано с дисплеем 20х4 (русский). Давление в системе примерно 6 атм, но предельная температура без срабатывания защиты - 95 градусов. При большей (а максимум без образования газа до 150) при открытии крана - сразу пойдёт пар, этого нельзя допускать.

Что реализовано сейчас:
1. Температура коллектора измеряется датчиком PT100 (переменная pt100Temp). Можно и датчиком PT1000, но нужно поменять калибровочный резистор на 4300 Ом и изменить строки: #define RREF 430.0, на 4300.0 и #define PT100_TYPE 100 на «TYPE 1000».

2. Датчик DS18B20 на пине IO6 (переменная collectorTemp) используется только для настройки основного датчика PT100, затем его нужно извлечь, иначе температура в коллекторе его убьёт. Вообще его можно полностью отключить, в работе системы он не участвует. Ошибка этого датчика будет показываться только на экране настройки PT100.

3. При ошибках остальных двух датчиков (pt100Temp и boilerTemp) отключаем все реле до устранения и выводим экран ошибки.

4. Обычный летний режим - включаем насос по дельте, качаем воду из бойлера в коллектор на высокой скорости до достижения нужной температуры с погрешностью в градус.

5. Ночной режим - выключаем всё, если коллектор остывает. Не охлаждаем бойлер.

6. Зимний режим - при охлаждении коллектора гоняем воду на низкой скорости, подогревая его до 10 градусов. При охлаждении бойлера подогреваем его ТЭНом до 30 градусов. Минимальная точка - 5 градусов для обоих устройств.

7. Режим перегрева (когда перегрет коллектор и бойлер, более 95 для обоих) - принудительно выводим экран перегрева, блокируем систему. Активируем сбросной клапан на коллекторе и подачу холодной воды в бойлер (реле перегрева). Система блокирована, пока температура в бойлере не снизится до 90 градусов.

7.1 Режим термозащиты (когда перегрет коллектор или бойлер, кто-нибудь один) - включаем насос на высокой скорости для охлаждения за счёт более холодного прибора, не блокируем систему.

8. Ручное управление насосом: насос работает 20 минут, затем переход в автоматический режим

9. Ручное управление нагревателем: ТЭН работает до температуры бойлера 90 градусов, затем переход в автоматический режим.

10. Экраны переключаются кнопками «вверх» и «вниз». Между ними кнопка «ввод», которая используется только при настройке температуры, дельты и ручном управлении.

11. Экраны: Основной - Установка температуры бойлера - Установка дельты - Ручной режим насоса - Ручной режим нагревателя - Настройка датчика.

12. Дополнительные экраны: Приветственный, Экран ошибок датчиков, Экран перегрева.

В архиве файл протеуса (в нём же и код написан), также исходный код в txt, функциональная схема (всё как обычно). LCDALPHARUS.DLL закинуть в C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\DATA\MODELS


Обновлено: добавлена возможность подключить датчик для аварийного отключения при низком уровне воды в бойлере. При высоком уровне на AD5 система блокируется с указанием "Нет воды в бойлере" на экране ошибок. Тип датчика, может быть любым, хоть кнопка. При трассировке указаны полевые транзисторы (биполярники только в симуляции). Реле низкопрофильные (HK4100F - 2 шт, G5CA-1A-E - 1 шт, DS2Y-S 1 шт). Спасибо пользователю Gordey за 3D модель WH2004A (тема здесь: https://kazus.run/forums/showthread....oogle_vignette сообщение 605). Как поведёт себя устройство....ХЗ, только лето покажет.

Обновлено: по результатам теста на макете изменено подключение ЖКИ: освобождены пины RX и TX, теперь индикатор подключен к 4, 5, 3, 2, 6, 7. Датчики работают корректно. Шим подсветки работает, но поставить резистор всё-же проще.
Вложения:
Тип файла: zip Солнечный коллектор (3).zip (653.8 Кб, 0 просмотров)
Реклама:

Последний раз редактировалось VASSILIJ; 29.01.2025 в 12:21. Причина: Откорректирован финальный вариант схемы и программы
VASSILIJ вне форума  
Непрочитано 18.11.2024, 14:57  
Yuri222
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 8,924
Сказал спасибо: 3,111
Сказали Спасибо 3,030 раз(а) в 2,258 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Сообщение от VASSILIJ Посмотреть сообщение
ТЭН работает до температуры бойлера 90 градусов
не многовато ли?

Сообщение от VASSILIJ Посмотреть сообщение
сделать в бане летний душ
и
Сообщение от VASSILIJ Посмотреть сообщение
Зимний режим
несовместимые вещи? Или решили расширить функционал?

Кмк - не хватает простого квазимеханического предохранителя (по температуре) - если умрет электроника - гарантированно разорвать цепь питания ТЭНов.

Ну и - watchdog timer не забыть.

И - гальваническую развязку процессорного блока и силового оборудования - очень бы желательно имхо.

Последний раз редактировалось Yuri222; 18.11.2024 в 15:09.
Yuri222 вне форума  
Непрочитано 18.11.2024, 15:36  
kreking
Почётный гражданин KAZUS.RUN
 
Регистрация: 04.02.2005
Сообщений: 2,505
Сказал спасибо: 1,240
Сказали Спасибо 938 раз(а) в 691 сообщении(ях)
kreking на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

В бойлере можно холодец варить при 90° С°, зимний режим ночной в 10° С°, надо долго ждать, пока нагреется вода или использовать проточный нагреватель. Осталось проверить, как ведёт система при отказе датчиков (короткое замыкание, обрыв), отказе электродвигателя и пропадания питающего напряжения.
kreking вне форума  
Непрочитано 18.11.2024, 16:45  
j-Roger
Гражданин KAZUS.RUN
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 839
Сказал спасибо: 379
Сказали Спасибо 943 раз(а) в 451 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Пара соображений.

Хорошая практика подключения клавиатуры/кнопок к выводам микроконтроллера - между выводом МК и общим проводом, а подтягивающие резисторы ( если внутренних недостаточно ) - к "плюсу" питания МК. Это несколько повышает шанс не спалить порт при его случайной настройке на вывод с нулевым выходным уровнем.

По подключению транзисторных ключей к портам микроконтроллера.
От момента включения питания и до надлежащей настройки портов МК может пройти какое-то время ( единицы - десятки миллисекунд ). В течение этого времени состояние портов заявлено как высокоимпедансное ( линия "висит в воздухе" ). Поэтому неплохо бы следовать правилу - не оставлять "висящими в воздухе" базу/затвор транзистора. При изъятии МК из работающего устройства ТЭН должен выключиться ))
j-Roger вне форума  
Непрочитано 18.11.2024, 17:13  
Yuri222
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 8,924
Сказал спасибо: 3,111
Сказали Спасибо 3,030 раз(а) в 2,258 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Сообщение от kreking Посмотреть сообщение
В бойлере можно холодец варить при 90° С°
дорогой холодец получается )
Я варю холодец минут 30-35, потом он настаивается часа 3-4 (охлаждения до примерно комнатной температуры, при выключенном подогреве) - ингредиенты, заложенные в кастрюльку готовы к доставанию и нарезанию.
Варится при 120 градусах примерно (нагревается до этой температуры минут может быть 10-15)
Yuri222 вне форума  
Непрочитано 18.11.2024, 17:57  
VASSILIJ
Временная регистрация
 
Регистрация: 15.04.2007
Сообщений: 71
Сказал спасибо: 7
Сказали Спасибо 6 раз(а) в 5 сообщении(ях)
VASSILIJ на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Спасибо, уже немного соображаю. watchdog timer - это однозначно верно, надо подумать... Наверное давать какой-нибудь тык с свободной лапы раз секунд за 20. Дополню, пока правда не знаю чем надёжным отслеживать. С транзисторами понял, действительно к базу к массе подтяну. С резисторами кнопок...не совсем понял физику процесса: вроде бы при настройке на нулевой выход они и занулены...или просто уже вечер тяжёлого дня... По зимнему режиму не совсем расширение функционала, скорее защита от лени (это же надо воду сливать, а там...пока -30 не ударит). Насчёт квазимеханического предохранителя - это поставить отдельное термореле на бойлер и коллектор?
VASSILIJ вне форума  
Непрочитано 18.11.2024, 18:05  
Yuri222
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 8,924
Сказал спасибо: 3,111
Сказали Спасибо 3,030 раз(а) в 2,258 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Сообщение от VASSILIJ Посмотреть сообщение
какой-нибудь тык с свободной лапы раз секунд за 20.
внутри процессора есть уже такой блочок - только разрешить его работу и настоить частоту его дрыга.

Сообщение от VASSILIJ Посмотреть сообщение
Насчёт квазимеханического предохранителя
может быть одноразовый плавкий или многоразовый - это такая железная (алюминиевая) блямба диаметром сантиметр-полтора емнип.
На двигатель холодильника ставится, чтобы отключать его при нагреве, если движок уже начал перегреваться, а холода в камере еще не хватает.
Только правильную температуру подобрать.
Yuri222 вне форума  
Непрочитано 18.11.2024, 19:54  
Variant99
Временная регистрация
 
Регистрация: 16.06.2016
Сообщений: 58
Сказал спасибо: 5
Сказали Спасибо 70 раз(а) в 23 сообщении(ях)
Variant99 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Вода 95° для душа - это прям Гестапо. Предельная температура - порядка 50°, дальше будет "ай-вай-вай".
То же самое и с давлением. 6 атм, особенно при 95° - изощренное Гестапо, дядюшка Мюллер был бы рад.
В многоквартирных домах давление порядка 4 атм, этого вполне хватает.

Сообщение от VASSILIJ Посмотреть сообщение
используется GPT,
Ааа, теперь понятно, почему такое Гестапо. Выберите другой движок ИИ.

Сообщение от Yuri222 Посмотреть сообщение
у и - watchdog timer не забыть.
Если не умеет им пользоваться - смысла не будет.

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

PS. А почему тема названа "Солнечный коллектор ..."? Солнечный коллектор - он ведь использует инфракрасную энергию Солнца, а не электрическую энергию ТЭНа

Последний раз редактировалось Variant99; 18.11.2024 в 20:06.
Variant99 вне форума  
Непрочитано 18.11.2024, 22:07  
Variant99
Временная регистрация
 
Регистрация: 16.06.2016
Сообщений: 58
Сказал спасибо: 5
Сказали Спасибо 70 раз(а) в 23 сообщении(ях)
Variant99 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

Замечания по тексту программы. Сразу с первых строк. Если говорите, что знакосинтезирующий дисплей с кириллической кодировкой, то зачем вам в тексте массив для символа 'Й'? Ведь он есть в таблице дисплея - 0xA6 (Й), 0xB9 (й).

Во-вторых, чтобы не писать пораздельности каждую букву текста в дисплей, создайте массивы сообщений с заранее указанными кодами символов и при выводе передавайте в параметр функции вывода начало этого массива и число выводимых символов. Тогда и текст программы будет короче, и исполняться будет быстрее.
То есть:
Код:
const char message1[] = {'C', 0xB9, 'o', 0xA4, '.'};
const char message2[] = {'P', 0xA7, 'a', 0xA8, ':', ' '};

void PrintString(const char *str, int num)
{
    while(num--)
    {
        SendChar(*str);
        str++;
     }
}

....
    PrintString(message1, sizeof(message1) );

Последний раз редактировалось Variant99; 18.11.2024 в 22:16.
Variant99 вне форума  
Непрочитано 18.11.2024, 22:44  
Variant99
Временная регистрация
 
Регистрация: 16.06.2016
Сообщений: 58
Сказал спасибо: 5
Сказали Спасибо 70 раз(а) в 23 сообщении(ях)
Variant99 на пути к лучшему
По умолчанию Re: Солнечный коллектор для умеренного климата

По схеме. Бегло глянул. Первое, что бросилось в глаза - на оптопарах U2 - U5 ток через светодиод почему-то распараллеливается и половина тока (даже больше, чем половина) течет через резистор (R9, R13, R17, R21).
И ток через базу транзисторов КТ2, КТ4, КТ6, КТ8 будет неоправданно высоким - низкие номиналы резисторов R10, R14, R18, R22 при высоких номиналах резисторов в коллекторных цепях этих транзисторов. Ну тоесть, транзистор, это же усилительный элемент, и ток базы (управления) у него в несколько раз меньше, чем ток коллектора (коммутации). А по схеме получается наоборот.

И так же непонятно вообще использование оптопар, если как на входе, так и на их выходе присутствует одно и то же напряжение +5 В.
Развязка от силовой цепи - ведь через реле же. Так что оптопары там вообще лишние, если питание на обеих сторонах оптопары одно и то же.
Variant99 вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 15:24.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.