1 2 3 4 5 6 7 8 9 10 10/10 10,00оценок: 19

"Народный контроллер" для теплового насоса

Тема в разделе "Геотермальные тепловые насосы", создана пользователем Pav2000, 21.03.16.

Статус темы:
Закрыта.
  1. dobrinia
    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648

    dobrinia

    Живу здесь

    dobrinia

    Живу здесь

    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648
    Адрес:
    Минск
    @Elprog, можно конечно - отличная идея! Жаль протоколы у разных производителей разные...
    к примеру в не дорогих ПЧ доступных на вторичке
    OMRON MX2 есть RS-485, в котором используется протокол ModBus RTU (Инструкция тут https://www.minimax.by/uploaded/Manual%20MX2%20rus. pdf стр 293)
    Yaskawa V1000 есть RS-485 в котором используется протокол MEMOBUS (http://www.proenergo.ru/doc_pdf/drives-doc/V1000_brochure_rus. pdf)
     
  2. kir102
    Регистрация:
    08.11.13
    Сообщения:
    275
    Благодарности:
    179

    kir102

    Живу здесь

    kir102

    Живу здесь

    Регистрация:
    08.11.13
    Сообщения:
    275
    Благодарности:
    179
    Адрес:
    Минск
    @Gaunt, чего зря? все защиты - это быстрое АЦП контроллера, которое может за 0,4 мкс (в моем случае) дать 12битный результат измерения тока в обмотке компрессора или еще где.

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

    конечно, сама разработка проще не будет. наоборот - дороже и сложнее. просто использовать stm32 для управления шагового моторчика, измерения пары датчиков температуры и вывода на экран - это как из пушки по воробьям.
     
  3. Pav2000
    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705

    Pav2000

    Живу здесь

    Pav2000

    Живу здесь

    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705
    Адрес:
    Москва
    Разработка будет вестись в среде ардуино (это единогласное мнение).
    Если будет выбран стм32 то будут использоваться наработки http://www.stm32duino.com, а там 400 серия представлена очень слабо. Заниматься еще и портированием я не готов, знаний стм не хватит.
    А вот 103 серия очень хорошо разобрана + еще используются наработки мапле.
    Может лучше к нам а компрессором крутить отдельным устройством (управлять по цифровому каналу). Объединение проектов принесло бы бонусы всем.

    Если есть желание крутить компрессор - надо реализовывать отдельным чипом. Смысл все в одном реализовывать - сэкономить десяток долларов? Вот если партия 1 миллион штук то да.

    Мой опыт подсказывает что написать с нуля что то путное очень сложно. И для уменьшения сложности надо жертвовать функционалам. Частотник это сложно, и времена там другие. На работе есть разработка на 400 чипе (писалось конечно не на ардуино и не мной, я там ТЗ разрабатывал и рулил-), Получилось на очень хорошем уровне. Занимались этим 1.5 года и было выпущено 3 поколения, пока допилили до желаемого.

    Вообщем думайте -) Вливайтесь.

    На али подобрал четыре варианта платы на стм32, запросил документацию у младших братьев. Пока жду.
    Одна плата вообще идеальна. Есть часы, i2c память, sd карта. Но что китайцы там напаяли не понятно. Жизненный цикл не понятен.
    Сейчас подбираю библиотеки и на дуе и на стм смотрю что надо будет портировать.
    У дуе конечно больше наработок и более обширна аудитория. Там почти все есть.
    Не торопитесь - контроллер выбирается на долго и лучше немного подумать а потом сделать без переделок.
    И если я в середине разработки скажу "не влезает" и давайте менять тоже не хорошо.
    Я понимаю что горит, но код можно писать не имея железа.

    По существу.
    Ночь прошла постов "Типа все пропало, мужики хрень написали" нет. Значить с датчиками и исполнительными устройствами определились. TEVA можно вернуть если есть убежденность что он в некоторых конфигурациях нужен.

    Сейчас предлагаю обсудить алгоритм (алгоритмами) управления отоплением дома без привязки к ТН. Т. е ЛЮБОГО ОТОПЛЕНИЯ.

    Дано (данные возможно избыточны можно не все использовать)
    - температура улицы
    - температура в доме
    - целевая температура дома
    - температура теплоносителя вход и выход
    - возможность включения и выключения источника тепла 2 варианта вкл/вкл и плавно 0-100% мощности
    Задача получить (скорее поддерживать) целевую температуру в доме.

    Наверное надо будет реализовать несколько алгоритмов (сколько и каких)
    Использовать ПИД регулятор?

    Вижу как минимум три варианта
    - по уличной температуре
    - по внутренней температуре
    - по температуре обратки/подачи СО

    После понимания этого вопроса переходим к написанию (обсуждению) алгоритмов управления по конфигурациям.

    Для затравки
    Вариант управления по температуре обратки/подачи СО
    ТН включается когда температура обратки ниже заданной а выключается при достижении подачи заданной температуры. Это ждя старт стоп. Для частотника включения не будет будет уменьшение мощности, Вопрос как?
     
  4. Elprog
    Регистрация:
    11.07.12
    Сообщения:
    5.375
    Благодарности:
    3.482

    Elprog

    Живу здесь

    Elprog

    Живу здесь

    Регистрация:
    11.07.12
    Сообщения:
    5.375
    Благодарности:
    3.482
    Адрес:
    Москва
    Как правило разные протоколы логического уровня, физически это RS-485. А логический уровень - это драйвер другой подсунуть ...
     
  5. Gaunt
    Регистрация:
    14.06.12
    Сообщения:
    14.741
    Благодарности:
    10.101

    Gaunt

    Живу здесь

    Gaunt

    Живу здесь

    Регистрация:
    14.06.12
    Сообщения:
    14.741
    Благодарности:
    10.101
    Адрес:
    Стерлитамак Уфимской Губернии
    @kir102,
    Я только за...Но суровая реальность предполагает решения, отличные от платы телевизора.
    Контроллер, да ещё с блоком питания ДС двигателя=компрессора, это чудо. Только это чудо должно быть ремонтнопригодным и легко меняемым.
     
  6. Elprog
    Регистрация:
    11.07.12
    Сообщения:
    5.375
    Благодарности:
    3.482

    Elprog

    Живу здесь

    Elprog

    Живу здесь

    Регистрация:
    11.07.12
    Сообщения:
    5.375
    Благодарности:
    3.482
    Адрес:
    Москва
    Поскольку изменение температуры процесс инерционный, то лучше использовать какие-то алгоритмы типа ПИ регулирования.
    Как вариант: рассчитывать скорость изменения температуры по двум последовательным отсчетам, скажем за 1 минуту и прогнозировать время достижения желаемой температуры. если желаемая температура будет достигнута (по прогнозу) через время отсчета (1 минуту) то выключать компрессор уже сейчас. Иначе будет постоянное перерегулирование и борьба с ним.
    Совсем правильно было бы строить полиномчик 2-3 степени и использовать не два, а большее количество отсчетов, тогда перерегулирование будет минимальным.
    Но я, пожалуй, не осилю такой полином написать...:faq:
     
  7. dobrinia
    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648

    dobrinia

    Живу здесь

    dobrinia

    Живу здесь

    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648
    Адрес:
    Минск
    @Pav2000, да не "горит"... лучше 1 раз адекватно выбрать плату/контроллер чем потом кусать локти и прикручивать что-то.
    Тролей и людей "абы ляпнуть" хватает на форуме, проще всего игнорировать их посты...

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

    А в моменты когда необходимая мощность СО превышает минимальную мощность ТН инвертором меняются обороты, поддерживая соотв. температуру.

    @Elprog, да физически RS-485, я руками и ногами за его использование.
     
  8. Sheeny
    Регистрация:
    25.05.10
    Сообщения:
    740
    Благодарности:
    881

    Sheeny

    Живу здесь

    Sheeny

    Живу здесь

    Регистрация:
    25.05.10
    Сообщения:
    740
    Благодарности:
    881
    Адрес:
    Ивантеевка
    либо по достижению заданной Т обратки измеряет Т ГВС и переключается для догрева ГВС, а после - выключается... Так уменьшим количество вкл-выкл.
     
  9. SergCh
    Регистрация:
    23.01.09
    Сообщения:
    3.262
    Благодарности:
    2.310

    SergCh

    Живу здесь

    SergCh

    Живу здесь

    Регистрация:
    23.01.09
    Сообщения:
    3.262
    Благодарности:
    2.310
    Адрес:
    Москва
    По поводу алгоритмов управления. Для стартстопа простейший это релейное регулирование по температуре в доме и уставке. Для того чтобы циклы вкл-выкл не были слишком рваными, можно сделать усреднение показаний датчика температуры по времени и обязательно настраиваемый пользователем гистерезис.
    Вариант для стартстопа посложнее, разница между уставкой и температурой в доме (сигнал рассогласования) воздействует через пид на температуру обратки, текущее значение которой включает или выключает компрессор.
    Для управления частотником без пид регулирования никак не обойтись. Тут понятно, сигнал рассогласования (разность между уставкой и температурой в доме) воздействует через пид на уровень выходного напряжения, подающегося на частотник.
    Дифференциал в пиде наверное можно не использовать.
     
  10. lut
    Регистрация:
    08.08.11
    Сообщения:
    138
    Благодарности:
    156

    lut

    Живу здесь

    lut

    Живу здесь

    Регистрация:
    08.08.11
    Сообщения:
    138
    Благодарности:
    156
    Адрес:
    поселок Куйбышев
    При управлении по температуре в помещении, надо следить за макс. температурой подачи, чтобы не перегреть теплые полы. Частотником можно ступенчато управлять, напр. Если разница между установоенной и фактической больше 2х градусов включать на всю. Если меньше 0.2 включать на минимум.
     
  11. Pav2000
    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705

    Pav2000

    Живу здесь

    Pav2000

    Живу здесь

    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705
    Адрес:
    Москва
    Защиты будут по возможности автоматические (встроенные на уровне классов)
    Это будет делаться автоматом проверка - выход за диапазон измерения после чтения датчика. При выходе останов ТН.


    Нет не правильно! защиты будут НО,
    Надо для отопления вводить максимальную температуру в полах (не защита) при достижении которой ТН выключается и ждет наступление условий на включение. Это будет фактически определять скорость прогрева дома.
    Обязательно проверка времени между включениями, допустим не чаще чем раз в 10 минут можно включать компрессор.

    Усреднение по какому времени делать это наверное 1-3 минуты.
    Для старт-стопника простейший вариант.
    Включение Если (обратка по СО меньше заданной) И (прошло более 10 минут с последнего включения) то включение.
    Выключение Если (TIN больше заданной) ИЛИ (подача СО больше максимальной температуры СО)

    Для частотника например.
    Включение Если (обратка по СО меньше заданной) И (прошло более 10 минут с последнего включения) то включение, мощность определяется разницей температур TIN и заданной. При разнице больше одного градуса 100% если меньше то десятые градуса * 100.
    Выключение Если (TIN больше заданной) ИЛИ (подача СО больше максимальной температуры СО)

    Замечание - у нас есть датчики TCONIN TCONOUT это обратка и подача СО соответствие определяется самостоятельно. По людски потоки в теплообменнике противоположны и TCONIN соответствует обратке СО а TCONOUT - подаче. У меня все на оборот (мне не забыть).

    Надо в наш файл писать переменные и константы которые важны и принимают участие в алгоритмах.

    Добавил еще одну таблицу по переменным и начал заполнять. Это нужно в первую очередь что бы при написании алгоритмов что то не забыть описать. если есть графа то она где то должна участвовать.
    ПИД желательно сделать, но как коэффициенты определить?
     

    Вложения:

    Последнее редактирование: 25.03.16
  12. dobrinia
    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648

    dobrinia

    Живу здесь

    dobrinia

    Живу здесь

    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648
    Адрес:
    Минск
    Алгоритм регулирования мощности должен работать постоянно, раз в 10 минут к примеру корректируя мощность по Вашей формуле. А не только в момент включения...
    Выключение если (TIN больше заданной И мощность ТН = минимальной) ИЛИ (подача СО больше максимальной температуры СО).
    Если же мощность ТН не минимальная, то надо поставить на минимум и через 10 минут проверить снова условия, и только тогда выключать...

    Замечание к замечанию... это ж температуры по фреону... а не по СО... В инверторном ТНе средний тепловой напор меняется в зависимости от мощности (средний тепловой напор это разность между средней температурой СО и фреона).
     
  13. dobrinia
    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648

    dobrinia

    Живу здесь

    dobrinia

    Живу здесь

    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648
    Адрес:
    Минск
    Тогда может надо три колонки сделать...: 1) датчики для алгоритма 2) датчики для проверки исправности ТН
     
  14. Pav2000
    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705

    Pav2000

    Живу здесь

    Pav2000

    Живу здесь

    Регистрация:
    01.03.09
    Сообщения:
    1.018
    Благодарности:
    2.705
    Адрес:
    Москва
    Любая ошибка это будет останов ТН.
    Датчики - это первая таблица

    Да он будет крутится в основном цикле программы. Частота (период) скорее всего секунды.
     
  15. dobrinia
    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648

    dobrinia

    Живу здесь

    dobrinia

    Живу здесь

    Регистрация:
    27.12.13
    Сообщения:
    4.445
    Благодарности:
    2.648
    Адрес:
    Минск
    @Pav2000, добавил от себя переменных/констант
     

    Вложения:

Статус темы:
Закрыта.