Отключение защиты от замерзания электро-котла Protherm Скат


В достаточно неплохой электро-котел встроена защита от замерзания, срабатывающая при достаточно высокой температуре, и которую невозможно отключить.
И если в систему залит антифриз, и планируется периодическое удаленное включение отопления (заранее перед приездом раз в неделю, по праздникам и т.п.), то эта защита может вылиться в копеечку.
Отключаем защиту с помощью навесной схемки на микроконтроллере AVR с цифровым датчиком температуры DS18B20.
Защита от замерзания в котле Протерм Скат (v.13) работает так — при снижении температуры жидкости на выходе из котла ниже 8 градусов включается насос до тех пор, пока температура не станет 10 градусов.
При снижении температуры ниже 5 градусов котел сам включается и работает пока не нагреет теплоноситель до 25 градусов.
Датчик, по которому котел определяет температуру — NTC терморезистор.
Обманывать котел будем так — при снижение температуры ниже 10.5 градусов отключаем, c помощью реле, терморезистор котла и подключаем вместо него резисторы сопротивлением 19.3 кОм, что с точки зрения котла равно чуть больше 10 градусов.
И так до тех пор пока температура не повысится выше 11 градусов, либо очень сильно не понизится (меньше -10 градусов).
Для информирования о состоянии используется светодиод — горит, когда датчик котла родной и тухнет, когда подмена.
В качестве «мозга» задействован микроконтроллер ATMEL Attiny13A. Датчик используется цифровой — DS18B20, подключен по 3-х проводной схеме, протокол 1-Wire, опрашивается раз в 5 секунд.
Переключающие контакты реле подключаются в разрыв одного провода терморезистора котла и к другому проводу терморезистора.
Питание 5 вольт берется на плате котла (от L7805) с технического разъема.

Назначение переключателей:
SW1: контроль низкой температуры (-10)
SW2: для промигивания текущей температуры с десятыми после запятой (при минусе сначала длинная вспышка).
Схема, прошивка, исходник для Atmel Studio 6.2

- +1
- 11 ноября 2014, 19:07
- vad7
- 1
Файлы в топике:
DisableAntifreezing.zip
Да, стоит подумать на эту тему. Так как вообще-то свойства антифриза хоть и заявлены, но не особо гарантированы. Я вот просто топлю весь сезон, у меня вообще вода в системе, котел правда Гепард.
Ага, CRC проверяем. Уже хорошо.
Может обработку ошибок передачи датчика сделать похитрее? CRC — это не только отлов случайных ошибок обмена, это еще и основной способ обнаружения КЗ в линии данных, или — что еще более важно — обрыва. Как раз при температуре 0С… -5С и вылезают все проблемы монтажа. В этом диапазоне получить обрыв связи с датчиком — это не из разряда маловероятных событий, это весьма вероятное событие. А в коде написано:
На время наладки — это да, ценная фича, а на боевом дежурстве — никто и не увидит.
Лучше вести отсчет времени «неотклика» датчика и если после последней корректной передачи данных прошло больше часа — возвращать управление основной схеме антифризера.
Насчет чтения настроек из EEPROM — это не так уж надежно, как может показаться на первый взгляд. У вас настройки меняются только при прошивке МК — так и оставьте их в программе в видеконстант дефайнов.
и еще —
Может обработку ошибок передачи датчика сделать похитрее? CRC — это не только отлов случайных ошибок обмена, это еще и основной способ обнаружения КЗ в линии данных, или — что еще более важно — обрыва. Как раз при температуре 0С… -5С и вылезают все проблемы монтажа. В этом диапазоне получить обрыв связи с датчиком — это не из разряда маловероятных событий, это весьма вероятное событие. А в коде написано:
if((T = DS18X20_ReadTempSingle()) < -32513) // error if < 0x80FF
{
FlashLED(10, 2, 2);
Delay100ms(10);
FlashLED(T & 0xF, 5, 3);
Delay100ms(10);
...
то есть получили ошибку, давайте весело поморгаем светодиодом. На время наладки — это да, ценная фича, а на боевом дежурстве — никто и не увидит.
Лучше вести отсчет времени «неотклика» датчика и если после последней корректной передачи данных прошло больше часа — возвращать управление основной схеме антифризера.
Насчет чтения настроек из EEPROM — это не так уж надежно, как может показаться на первый взгляд. У вас настройки меняются только при прошивке МК — так и оставьте их в программе в виде
и еще —
При снижении температуры ниже 5 градусов котел сам включается и работает пока не нагреет теплоноситель до 25 градусов.Это происходит независимо от насоса, просто прогрев воды внутри котла? Если да — то это еще и самоподогрев системы управления под кожухом, как по мне — лучше его оставить, сама схема конечно чуток выделяет тепло, но при -5… -10 там обязательно выпадет иней, и это весьма стремный момент, т.к. иней потом будет прогрет, стечет капельками и не факт, что до следующего промерзания капельки успеют высохнуть. С выключенным насосом это не очень затратно, впрочем затраты эти можно и посчитать и просто измерить. Ну или пару двухваттных резисторов включить на 220В и пусть подогревают только полость с системой управления.
- andreich78
- 12 ноября 2014, 12:21
- ↓
Да нет, насос работает и греет весь дом.
А что с EEPROM не так? Не слышал про сбои (ну кроме пониженного напряжения и то при записи), да и сам не сталкивался.
А что с EEPROM не так? Не слышал про сбои (ну кроме пониженного напряжения и то при записи), да и сам не сталкивался.
Ну, пугать не буду, на тиньке13 мне информация об отвале EEPROM не встречалась, но на тиньке2313 при отрицательных температурах становится всё криво. При отключенном BOD иногда сбивается EEPROM, при включении BOD — начинает глючить сам BOD и в результате перестает работать МК. А BOD нужен как раз для обеспечения отключения МК при провале напряжения питания ниже допустимого.
Но морозы — это ладно, есть же еще и отвалы напряжения питания по неизвестной траэктории (в сельской-то местности), вот тут и возникает опасность получить плавное падение напряжения на входе МК от 5В до нуля. Тут с вероятностью 50% потеря всего содержимого в EEPROM, строго по даташиту.
Память программы всему этому не подвержена, питание подали — программа запустилась.
В вашей прошивке используется постоянный опрос EEPROM, без использования промежуточного буфера и без проверки на попадание значения в допустимые рамки, в случае даже единичного глюка — никакой защиты нет вообще. Мне больше нравится подход, когда данные из EEPROM читаются только при старте, проверяются на допустимые значения и пишутся в буфер в памяти. Но даже этот подход в вашем случае — ненужный риск.
Но морозы — это ладно, есть же еще и отвалы напряжения питания по неизвестной траэктории (в сельской-то местности), вот тут и возникает опасность получить плавное падение напряжения на входе МК от 5В до нуля. Тут с вероятностью 50% потеря всего содержимого в EEPROM, строго по даташиту.
Память программы всему этому не подвержена, питание подали — программа запустилась.
В вашей прошивке используется постоянный опрос EEPROM, без использования промежуточного буфера и без проверки на попадание значения в допустимые рамки, в случае даже единичного глюка — никакой защиты нет вообще. Мне больше нравится подход, когда данные из EEPROM читаются только при старте, проверяются на допустимые значения и пишутся в буфер в памяти. Но даже этот подход в вашем случае — ненужный риск.
- andreich78
- 13 ноября 2014, 18:51
- ↑
- ↓
Обманывать котел будем так
Вы уж извините, но это напоминает старый анекдот «Обманул таксиста: денег дал, а сам не поехал».
либо очень сильно не понизится (меньше -10 градусов).
Вы уверены, что котел нормально запустится при температуре теплоносителя -10С? Ведь производитель на такой режим не рассчитывал. Может быстро выйти из строя механика, да и программа контроллера может неадекватно отреагировать не такой хак.
По опыту эксплуатации за два года в системе с антифризом лёд или застывшее на валу масло, или гремлины два раза ломали крыльчатку насоса. Менять насос в промёрзшем доме ночью это отличное развлечение.
- count_enable
- 14 ноября 2014, 23:39
- ↓
Риск он всегда присутствует, даже если ничего не трогать.
Котел то этот изначально разрабатывался для воды, поэтому столько ступеней защиты.
Даже запрещено было антифриз лить. Потом, без переделки внутренностей разрешили какую-то аффилированную марку, чтоб рынок в России не потерять.
В любом случае считаю неправильным, что температура начала работы защиты аж с 8 градусов.
Котел то этот изначально разрабатывался для воды, поэтому столько ступеней защиты.
Даже запрещено было антифриз лить. Потом, без переделки внутренностей разрешили какую-то аффилированную марку, чтоб рынок в России не потерять.
В любом случае считаю неправильным, что температура начала работы защиты аж с 8 градусов.
если не секрет, каким устройством будет удаленно включаться прогрев до комфортной температуры?
- andreich78
- 17 ноября 2014, 10:52
- ↓
если «тревожный» вход свободен — я бы завел на него сигнал включающий «анти-антифризное» реле. Чтобы оно сообщало об обратном включении анти-замерзания котла при понижении температуры ниже -10С. Хотя, можно и просто поглядывать за графиком температуры.
Удачи.
Удачи.
- andreich78
- 19 ноября 2014, 10:53
- ↑
- ↓
Комментарии (25)
RSS свернуть / развернуть