Явно заданная кривая отопления

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

Как это работает. Мы явным образом задаем значения температурной кривой через массив. Например, мы знаем, что при температуре на улице в -10°C котел в контуре отопления должен выдавать 61°C. Составляем табличку от -30 до +30 с шагом в градус:

30 ... 10 9 ... -10 -11 ... -30
1 ... 38 40 ... 61 62 ... 70

А затем, нижнюю строку этой таблицы представляем в виде массива:

int iv_curve[] = {1, 3, 5, 7, 10, 12, 14, 16, 18, 20, 21, 23, 25, 27, 29, 30, 32, 34, 35, 37, 38, 40, 41, 43, 44, 45, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 59, 60, 60, 61, 62, 63, 63, 64, 65, 65, 66, 66, 67, 67, 68, 68, 69, 69, 69, 69, 69, 70, 70, 70};

В функцию calc_temp() после строки

temp_n = (a * x * x) + (b * x) + c;

вставляем следующий код:

 // явно заданная кривая отопления
 if (iv_k > 1.50) {
  // Кривая задается с шагом 1 градус от +30 до -30
  int i = round(30 - temp_1);
  if (i
  if (i > 60) i = 60;
  // Матрица с кривой: iv_curve[0] - температура контура отопления при +30, iv_curve[60] - при -30
  int iv_curve[] = {1, 3, 5, 7, 10, 12, 14, 16, 18, 20, 21, 23, 25, 27, 29, 30, 32, 34, 35, 37, 38, 40, 41, 43, 44, 45, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 59, 60, 60, 61, 62, 63, 63, 64, 65, 65, 66, 66, 67, 67, 68, 68, 69, 69, 69, 69, 69, 70, 70, 70};
  temp_n = iv_curve[i]; 
 }

Теперь, если мы в настройках зададим кривую отопления больше 1.5, например 1.6, то котел будет управляется через явно заданную кривую. Как нарисовали, так и будет работать.

Краткие итоги после зимы. Все отработало на отлично, к котлу теперь подхожу только проверить давление в системе. Глюков не было, температуру держит железно.

В Леруа Мерлен приобрел пластиковый инструментальный ящик, в который все оборудование прекрасно влезло (на фото). Дополнил систему модулем nRF24L01, теперь через вторую Ардуину прибор мне шлет СМС о состоянии системы отопления, температуре в доме и на улице. Но это уже другая история, возможно, напишу потом.

Тэги: 
23.04.2017 00:07