Помогите пожалуйста реализовать в С++ или блоках

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#1

Сообщение AlexGrash » 04.05.2024{, 11:41}

Доброго времени суток.
Уважаемые знатоки, пожалуйста, помогите решить задачку, на словах я её понимаю, как должна работать,
а вот с реализацией - не совсем.
Итак: Бойлерное отопление частного дома.
Условие: Имеем 6 тэнов, уставку температуры в доме - Tset., датчик температуры - Tdch, дифференциал температуры (он же лямбда, кому как удобнее) включения-отключения тэнов - diff. С понижением температуры ниже уставки должен добовляться в работу 1 тэн.
Tset=24°C
diff=2°C
Tset-diff=Tmin
Tmin=22°C
Это можно решить 2-мя способами (как решил я)
1.
diff/5=a (переменная)
если Tset<Tdch, то все тэны выключены
если Tset>=Tdch и Tdch>Tset-a, то включен 1 тэн
если Tset-a>=Tdch и Tdch>Tset-a*2, то включено 2 тэна
если Tset-a*2>=Tdch и Tdch>Tset-a*3, то включено 3 тэна
если Tset-a*3>=Tdch и Tdch>Tset-a*4, то включено 4 тэна
если Tset-a*4>=Tdch и Tdch>Tmin, то включено 5 тэнов
если Tmin>=Tdch, то включено 6 тэнов.
Каждому тэну выделяем по выходу с ардуино и в принципе всё работает, НО.
Я понимаю, что есть на много проще способ решить эту задачку с приминением массива, а здесь до меня чуть
не доходит, как это работает.
Так ещё и вдобавок меня жаба гложет на выделение каждому тэну по выходу (роскошь), поэтому тэны объединенны 4 ступени.
1 ст.= 1 тэн, соответственно выход №1
2 ст.= 2 тэна, соответственно выход №2
3 ст.= 1 тэн, соответственно выход №3
4 ст.= 2 тэна, соответственно выход №4
И получается на каждом условии нужно прописывать какие ступени включены, а какие выключены.
Это и есть 2 вариант решения этой задачи с моей стороны.
Так вот и заключается вопрос как реализовать данную задачу, данное решение реализованно в таймере экрана nextion, если нужно могу скинуть выложить код программы.
Заранее спасибо.

ecoins
Полковник
Сообщения: 3000
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 458
Откуда: Шатура
Имя: Энвер

Помогите пожалуйста реализовать в С++ или блоках

#2

Сообщение ecoins » 04.05.2024{, 13:46}

AlexGrash писал(а):
04.05.2024{, 11:41}
Так вот и заключается вопрос как реализовать данную задачу, данное решение реализованно в таймере экрана nextion, если нужно могу скинуть выложить код программы.
Задача интересная и перспективная (в том числе и как бизнес-проект).
Известно, что некоторые форумчане достаточно успешно решают задачи по автоматизации отоплением и управлением собственных частных домов.
Задача полезная и в общем затратная - требуется проектирование и создания опытных решений, электронных узлов, программных блоков и функций.
Если кто-то выступил бы инициатором создания команды проекта под условным названием "Умный частный дом", мы бы с интересом присоединились к такой команде.
С уважением, ecoins.

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#3

Сообщение montirovka » 04.05.2024{, 14:06}

AlexGrash, Ардуинка по отношению средств управлению ТЭНами почти ни чего не стоит или цена меньше ТЭНа.
ТЭНы можно включать параллельно и последовательно. При последовательном соединении мощность меньше, но есть вероятность что дольше прослужат. При параллельном мощность складывается. Хватит ли вам суммарной мощности всех тэнов? Подключаются тэны на 220 вольт или 380 вольт? Я бы рекомендовал равномерно по 1-2 тэна на фазу в том случае если у вас по всем трем фазам одинаковое напряжение. Но такое редко бывает.
Есть такой параметр - теплопотери дома. Как правило от него нужно отталкиваться.
Забыл написать , вернее спросить , про суммарную мощность установленных батарей. Может получиться так, что в доме будет холодно а из бойлера выходить вода под 100 °С. Вам нужно подумать и о управлении циркуляционным насосом.
Последний раз редактировалось montirovka 04.05.2024{, 14:14}, всего редактировалось 1 раз.
Люблю учиться на чужих ошибках.

Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 580
Зарегистрирован: 30.08.2018{, 17:15}
Репутация: 47
Откуда: Иркутская область
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#4

Сообщение SergeyShikal » 04.05.2024{, 14:07}

AlexGrash писал(а):
04.05.2024{, 11:41}
Заранее спасибо.
Посмотрите этот проект
Бойлер .flp
(2.78 МБ) 17 скачиваний
, от датчика на улице отказался- не нужен, температура регулруется по температуре в доме, температура носителя от 50 до 65 градусов 3 тена по 2 квт дом 100 кв. Другого отопления нет(котел потек). Включение тенов через твердотельные реле. Зимой температуры до -55.

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#5

Сообщение montirovka » 04.05.2024{, 15:12}

На ночь можно или вовсе выключать отопление или снижать температуру теплоносителя, а перед утром включать. Это лишь в процессе эксплуатации будет понятно. Если бойлер большой и электроэнергия двухтарифная - то немного можно будет экономить. Бойлер каким объемом?
Подключение к ардуино тэнов сделать примерно вот так:
shema_3_thumb.jpg
Люблю учиться на чужих ошибках.

Ander
Рядовой
Сообщения: 74
Зарегистрирован: 31.10.2023{, 12:50}
Репутация: 12
Имя: Андрей

Помогите пожалуйста реализовать в С++ или блоках

#6

Сообщение Ander » 04.05.2024{, 16:23}

Еще интересное решение
-1. поставить бйпас между обраткой и подачей, При нагреве домашней температуры до нужной, бойпас открывается и тены греют только бойлер, стало холодно, бойпас перекрывается и теплоноситель циркулирует по всему дому.
2- установить в комнатах клапаны на батареях, тогда можно регулировать каждую комнату отдельно.

WildCat
Лейтенант
Сообщения: 447
Зарегистрирован: 04.06.2022{, 04:14}
Репутация: 51
Имя: Михаил

Помогите пожалуйста реализовать в С++ или блоках

#7

Сообщение WildCat » 04.05.2024{, 16:37}

Задача в принципе простая. Решается на компараторах. Но в указанном варианте я вижу минусы:
AlexGrash писал(а):
04.05.2024{, 11:41}
1 ст.= 1 тэн, соответственно выход №1
2 ст.= 2 тэна, соответственно выход №2
3 ст.= 1 тэн, соответственно выход №3
4 ст.= 2 тэна, соответственно выход №4
При смене работающего ТЭНа будет просадка температуры. «Новый» ТЭН еще холодный и требуется время для его прогрева. Учитывая очень небольшую дельту включения (diff=2, min diff=2/5=0,4 градуса), будут постоянные колебания температуры и постоянное же переключение ТЭНов.
И в вашем решении отсутствует гистерезис переключения ступеней, поэтому при граничных показаниях датчика температуры и при колебании этих показаний соседние ступени будут постоянно переключаться. Чем коммутируете ТЭНы и какова их мощность?

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

Эту проблему можно решить чуть иначе.
- Сделать всего две ступени (по 3 ТЭНа).
- первая ступень включается напрямую, вторая - через твердотельное реле управляется ШИМ сигналом посредством ПИД регулятора (период ШИМ достаточен 30…60с).
Логика работы:
Сигнал с ПИД регулятора делится на два участка по 50%.
Если сигнал меньше 50%, то работает первая ступень (плавная), вторая выключена.
Если сигнал ПИД > 50+дельта, то первая ступень отключается, включается вторая.
При дальнейшем росте сигнала ПИД регулятора вторая ступень работает постоянно, а первая догоняет температуру включением ШИМ.
Такая логика работы исключает резкие провалы температуры и позволяет плавно регулировать и поддерживать температуру.

Отправлено спустя 7 минут 48 секунд:
Замечание по включению ТТР:
Последовательно с ТТР нужно включить силовое реле (контактор). Контактор управляется отдельно, если есть потребность в управлении.
Это необходимо для безопасности, чтоб в случае пробоя ТТР не было неконтролируемой работы ТЭНов.

А дальше можно логику накручивать, контролируя напряжение на выходе ТТР, и если есть напряжение тогда, когда ТТР выключен, выдавать сигнал о неисправности.

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#8

Сообщение montirovka » 04.05.2024{, 17:11}

WildCat, байпас поддерживаю.Его сделать с трехходового клапана с терморегулятором.
Люблю учиться на чужих ошибках.

vovka1973
Майор
Сообщения: 1066
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Помогите пожалуйста реализовать в С++ или блоках

#9

Сообщение vovka1973 » 04.05.2024{, 17:17}

AlexGrash писал(а):
04.05.2024{, 11:41}
Заранее спасибо.
Я бы позаботился о защите от зависания , есть схема работы выходных реле при зависании мк они отключаются если надо могу схему скинуть .
Изображение

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#10

Сообщение montirovka » 04.05.2024{, 18:03}

vovka1973 писал(а):
04.05.2024{, 17:17}
Я бы позаботился о защите от зависания
Правильный монтаж, правильное питание, ферритовые "бусинки" по питанию, опторазвязка, короткие провода (особенно I2C шина), экранировка - вот самая хорошая защита от подвисания.
P.S.
Забыл написать для данного случая. Параллельно симисторам снабберная цепь.
Последний раз редактировалось montirovka 04.05.2024{, 18:38}, всего редактировалось 1 раз.
Люблю учиться на чужих ошибках.

hallozin1
Рядовой
Сообщения: 35
Зарегистрирован: 02.08.2021{, 12:43}
Репутация: 5
Имя: Алексей

Помогите пожалуйста реализовать в С++ или блоках

#11

Сообщение hallozin1 » 04.05.2024{, 18:29}

#define NUM_TENS 6
#define T_SET 24
#define DIFF 2
#define T_MIN (T_SET - DIFF)

int tens[NUM_TENS] = {2, 3, 4, 5, 6, 7}; // Пины, к которым подключены тэны

void setup() {
for (int i = 0; i < NUM_TENS; i++) {
pinMode(tens, OUTPUT);
}
}

void loop() {
float Tdch = readTemperature(); // Функция для чтения температуры с датчика

int numActiveTens = (T_SET - Tdch) / DIFF;
if (numActiveTens < 0) numActiveTens = 0;
if (numActiveTens > NUM_TENS) numActiveTens = NUM_TENS;

for (int i = 0; i < NUM_TENS; i++) {
if (i < numActiveTens) {
digitalWrite(tens, HIGH); // Включить тэн
} else {
digitalWrite(tens, LOW); // Выключить тэн
}
}
}

float readTemperature() {
// Здесь должен быть код для чтения температуры с датчика
// Возвращаемое значение должно быть в градусах Цельсия
}

Я думаю проще некуда

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#12

Сообщение AlexGrash » 04.05.2024{, 23:42}

ecoins писал(а):
04.05.2024{, 13:46}
AlexGrash писал(а):
04.05.2024{, 11:41}
Так вот и заключается вопрос как реализовать данную задачу, данное решение реализованно в таймере экрана nextion, если нужно могу скинуть выложить код программы.
Задача интересная и перспективная (в том числе и как бизнес-проект).
Известно, что некоторые форумчане достаточно успешно решают задачи по автоматизации отоплением и управлением собственных частных домов.
Задача полезная и в общем затратная - требуется проектирование и создания опытных решений, электронных узлов, программных блоков и функций.
Если кто-то выступил бы инициатором создания команды проекта под условным названием "Умный частный дом", мы бы с интересом присоединились к такой команде.
С уважением, ecoins.
Я с Вами полностью согласен, вот мой рабочий проект, отработал в таком виде 3-и года. Раньше использовал Blink, пока он не рухнул.

Отправлено спустя 37 минут 29 секунд:
Кстати забыл уточнить что с Blink-ом использовал сначала ecp8266, а затем ecp32, а затем уже в проекте появилась Мега, всем управляли эти процессоры, а NEXTION использовал как монитор и память EEPROM.
Сейчас же переделал логику на экран NEXTION, теперь управляет всем процессом экран, а мега теперь не актуальна, т.к. использование для периферии тянет и Nano.

Отправлено спустя 41 минуту 54 секунды:
montirovka писал(а):
04.05.2024{, 14:06}
AlexGrash, Ардуинка по отношению средств управлению ТЭНами почти ни чего не стоит или цена меньше ТЭНа.
ТЭНы можно включать параллельно и последовательно. При последовательном соединении мощность меньше, но есть вероятность что дольше прослужат. При параллельном мощность складывается. Хватит ли вам суммарной мощности всех тэнов? Подключаются тэны на 220 вольт или 380 вольт? Я бы рекомендовал равномерно по 1-2 тэна на фазу в том случае если у вас по всем трем фазам одинаковое напряжение. Но такое редко бывает.
Есть такой параметр - теплопотери дома. Как правило от него нужно отталкиваться.
Забыл написать , вернее спросить , про суммарную мощность установленных батарей. Может получиться так, что в доме будет холодно а из бойлера выходить вода под 100 °С. Вам нужно подумать и о управлении циркуляционным насосом.
Конечно спасибо, за столь развёрнутый совет, но как уже было написано в дополнение хочу ещё пару строк для пояснения:
Используется 2 бойлера по 6 кВт каждый.
В каждом бойлере блок тэнов из 3, по 2 кВт каждый.
Включение выключение тэнов-ступеней осуществлено с помощью однополюсных контакторов через симмисторное управление, сделанное как раз по Вашей приложенной схеме (про ампераж думаю смысла писать нет - сам электрик).
И ещё думаю управление шим сигналом 6 кВт (30А для однофазной сети) это как то крутовато для подающей линии.
Чуть позже приложу видео с экрана NEXTION, доберусь только до него.

Отправлено спустя 53 минуты 49 секунд:
- это сам экран
Вложения
Умный дом v2.5 (Mega_08.11.2023).flp
(5.7 МБ) 13 скачиваний

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#13

Сообщение AlexGrash » 05.05.2024{, 02:11}

// Растягиваем величину дифференциала на одинаковые участки для включения ступеней отопления
Tmin.val=Tset.val-diff.val
a.val=diff.val/5
f4.val=Tset.val-a.val //
f3.val=f4.val-a.val //
f2.val=f3.val-a.val //
f1.val=f2.val-a.val //
//
// 1- Тэны выключены; 0- Тэны включены
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Тэны выключены
if(Tdch.val>Tset.val)// Если температура в доме не превышает уставку заданной температуры
{
Klbst1.val=1 // 1 ступень выключена
Klbst2.val=1 // 2 ступень выключена
Klbst3.val=1 // 3 ступень выключена
Klbst4.val=1 // 4 ступень выключена
}
// Включен 1 тэн
if(Tset.val>=Tdch.val&&Tdch.val>f4.val)
{
Klbst1.val=0
Klbst2.val=1
Klbst3.val=1
Klbst4.val=1
}
// Включено 2 тэна
if(f4.val>=Tdch.val&&Tdch.val>f3.val)
{
Klbst1.val=0
Klbst2.val=1
Klbst3.val=0
Klbst4.val=1
}
// Включено 3 тэна
if(f3.val>=Tdch.val&&Tdch.val>f2.val)
{
Klbst1.val=0
Klbst2.val=1
Klbst3.val=1
Klbst4.val=0
}
// Включено 4 тэна
if(f2.val>=Tdch.val&&Tdch.val>f1.val)
{
Klbst1.val=1
Klbst2.val=0
Klbst3.val=1
Klbst4.val=0
}
// Включено 5 тэнов
if(f1.val>=Tdch.val&&Tdch.val>Tmin.val)
{
Klbst1.val=1
Klbst2.val=0
Klbst3.val=0
Klbst4.val=0
}
// Включено 6 тэнов
if(Tmin.val>=Tdch.val)
{
Klbst1.val=0
Klbst2.val=0
Klbst3.val=0
Klbst4.val=0
}
//
Отправлено спустя 11 минут 37 секунд:
Событие в таймере экрана, вот его и хотелось бы привести в нормальный вид с помощью массивов. :smile37: :smile44:

ecoins
Полковник
Сообщения: 3000
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 458
Откуда: Шатура
Имя: Энвер

Помогите пожалуйста реализовать в С++ или блоках

#14

Сообщение ecoins » 05.05.2024{, 04:32}

AlexGrash писал(а):
05.05.2024{, 01:55}
Я с Вами полностью согласен, вот мой рабочий проект, отработал в таком виде 3-и года.
Посмотрел на сколько это возможно внимательно.
Очень большая и интересная работа, и главное что привлекает - реальный проект на реальном объекте.
AlexGrash писал(а):
05.05.2024{, 01:55}
а затем уже в проекте появилась Мега, всем управляли эти процессоры, а NEXTION использовал как монитор и память EEPROM.
Сейчас же переделал логику на экран NEXTION, теперь управляет всем процессом экран, а мега теперь не актуальна, т.к. использование для периферии тянет и Nano.
На сколько я понял, для Nextion Вы написали много, много скриптов и через это реализовали основной алгоритм управления.
Смелый подход - писать скрипты для Nextion не простая работа.
Не смотрели проект Kascada - там инструмент для реализации управления непосредственно с панели достаточно хорошо развит.
--------
Из проекта не совсем понял, как Вы отправляете команды в Nextion на страницы, которые в текущий момент не активны - просто игнорируете обратные посылки об ошибках?
-------
Из видео мне кажется что время реакции на команды с панели не очень высокая - панель "притормаживает".
Видимо это связано с использованием в проекте стандартных блоков FLProg для работы с Nextion.
Возможным решением работы с Nextion является подход (и блоки) ecoins.
Это конечно дело вкуса, в Вашем случае еще и переход от уже освоенного не простого стандартного подхода работы с Nextion.
------
AlexGrash писал(а):
05.05.2024{, 01:55}
Чуть позже приложу видео с экрана NEXTION, доберусь только до него.
Интересно, как реализован пункт "Видео" на панели Nextion - что там отображается?
-------
Спасибо.
Желаю успехов.
С уважением, ecoins.

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#15

Сообщение AlexGrash » 05.05.2024{, 05:59}

ecoins писал(а):
05.05.2024{, 04:32}
На сколько я понял, для Nextion Вы написали много, много скриптов и через это реализовали основной алгоритм управления.
Да, всего получилось 6 страниц, но страница управления - стартовая. В ней и находится весь алгоритм автоматического и ручного управления, остальные страницы используются, в основном, в качестве визуального EEPROM
ecoins писал(а):
05.05.2024{, 04:32}
Не смотрели проект Kascada - там инструмент для реализации управления непосредственно с панели достаточно хорошо развит.
Смотрел, много смотрел, но подключение по сети и среда разработки почему-то мне не зашли, не знаю почему. С NEXTION мне оказалось разобраться попроще.
ecoins писал(а):
05.05.2024{, 04:32}
Из проекта не совсем понял, как Вы отправляете команды в Nextion на страницы, которые в текущий момент не активны - просто игнорируете обратные посылки об ошибках?
Нет, ошибок нет. В проекте, который на видео, с ардуиной общается только одна стартовая страница, остальные страницы поправляют глобальные данные на этой странице, т.е. кнопки включения выключения, а параметры уставок являются глобальными на своих страницах и стартовая страница обращается сразу к этим уставкам.
ecoins писал(а):
05.05.2024{, 04:32}
Из видео мне кажется что время реакции на команды с панели не очень высокая - панель "притормаживает".
Видимо это связано с использованием в проекте стандартных блоков FLProg для работы с Nextion.
Это тормозит сам экран, потому что приобрёл вместо резистивного - емкостной, надо было выбрать наоборот, у резистивного скорость на нажатия на много выше, да ещё и плёнка транспортировочная не много мешает.
ecoins писал(а):
05.05.2024{, 04:32}
Интересно, как реализован пункт "Видео" на панели Nextion - что там отображается?
Страница видео полностью локальная. Бывают случаи, когда та или иная камера схватила глюк и видео пропало, и помогает только перезагрузка отдельной камеры или же всей системы в куче. Заходим на страницу видео и выключаем отдельный девайс или всё в куче, по прошествии определённого времени (отдельно для каждой камеры время составляет 3-и мин., а для всей системы 10 мин.) всё включается обратно, причём пока идёт перезагрузка уйти со страницы не получится (дабы избежать лишние глюки в процессоре, а точнее сказать не знаю почему так сделал).

Отправлено спустя 23 минуты 12 секунд:
hallozin1 писал(а):
04.05.2024{, 18:29}

Я думаю проще некуда
Да, спасибо огромное, проще не куда. Но это решение с 6-ю выходами, а можно это же решение для 6-и тэнов, но с 4-мя выходами реализовать?

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#16

Сообщение montirovka » 05.05.2024{, 06:57}

AlexGrash писал(а):
05.05.2024{, 01:55}
Используется 2 бойлера по 6 кВт каждый.
Я вообще то спрашивал за объем бойлера.
А какие теплопотери дома? Сколько киловатт в день "сжигаете"?
Люблю учиться на чужих ошибках.

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#17

Сообщение AlexGrash » 05.05.2024{, 07:05}

montirovka писал(а):
05.05.2024{, 06:57}
Я вообще то спрашивал за объем бойлера.
А какие теплопотери дома? Сколько киловатт в день "сжигаете"?
Просто не понимаю, как это может помочь?
Если честно сказать, то обычный бойлер для отопления (литраж не замерял).
Про потери точно ни чего не скажу, а вот про киловатты - можно посчитать, грубовато но всё же 12*24=288кВт/сутки.

Отправлено спустя 1 минуту 4 секунды:
Опять же хочу подчеркнуть расчёты примерные и очень грубые.

hallozin1
Рядовой
Сообщения: 35
Зарегистрирован: 02.08.2021{, 12:43}
Репутация: 5
Имя: Алексей

Помогите пожалуйста реализовать в С++ или блоках

#18

Сообщение hallozin1 » 05.05.2024{, 07:51}

AlexGrash писал(а):
05.05.2024{, 06:22}
Да, спасибо огромное, проще не куда. Но это решение с 6-ю выходами, а можно это же решение для 6-и тэнов, но с 4-мя выходами реализовать?
нужно 2 строки в коде изменить #define NUM_TENS 4 и int tens[NUM_TENS] = {2, 3, 4, 5}; // Пины, к которым подключены тэны

Аватара пользователя
montirovka
Сержант
Сообщения: 264
Зарегистрирован: 15.02.2021{, 16:16}
Репутация: 52
Откуда: Геленджик
Имя: Сергей

Помогите пожалуйста реализовать в С++ или блоках

#19

Сообщение montirovka » 05.05.2024{, 08:28}

А датчик температуры теплоносителя где стоит? На входе или на выходе бойлеров (общего трубопровода)?
Делайте сразу там и там. Потом проще будет отслеживать отопительный процесс.
Люблю учиться на чужих ошибках.

AlexGrash
Рядовой
Сообщения: 13
Зарегистрирован: 30.12.2021{, 08:10}
Репутация: 2
Имя: Александр

Помогите пожалуйста реализовать в С++ или блоках

#20

Сообщение AlexGrash » 05.05.2024{, 09:26}

hallozin1 писал(а):
05.05.2024{, 07:51}
нужно 2 строки в коде изменить #define NUM_TENS 4 и int tens[NUM_TENS] = {2, 3, 4, 5}; // Пины, к которым подключены тэны
Вот здесь я не совсем понял, тэнов у меня 6, а выходов 4. Тэны должны включаться по одному, по мере понижения температуры в пределах дифференциала.

Ответить

Вернуться в «Помогите, а то я "нимагу"»