Алгоритм запуска догревателя в зависимости от внешней температуры
Здравствуйте.
Покиньте, пожалуйста, идею о реализации следующей хотелки.
6е поколение, полностью аналоговое подключение, котёл с управлением аналоговым сигналом (скорее всего потенциалом, чтобы точно знать должен в данный момент работать котел или нет, контроля работы котла нет и свободных входов для реализации контроля работы котла уже нет, разве только r7 подключать ради этого.
Собственно хотелка: автоматически включать режим догревателя при запуске двигателя зимой и не включать его летом. Котел при старте двигателя может быть уже запущен (тогда при запуске температура двигателя будет, например, 30 градусов, температура внутри салона 0, а окружающая -20), так и не запущен (тогда температура двигателя при старте, скажем, 0 градусов, а в салоне 10, окружающая так же -20). Параметра "внешняя температура" в комплексе нет, разве только добавить к блоку датчик на проводе и вынести его из салона "на улицу" и принимать решение о запуске режима догревателя по этому датчику. Но если машина в теплом гараже, а потом выезжает на холодную улицу? Догреватель не включится.
Из идей еще было программа ГЛ на событие "температура двигателя стала меньше заданной (например 0 градусов)" - значит зима и нужен режим догревателя (взводится лог.переменная, при запуске двигателя проверяем её, если переменная взведена, даём потенциал на выход управления котлом), но возник вопрос - а как потом такую переменную снять, по какому условию или событию? Сбрасывать через несколько суток, если не было запусков двигателя и если событие "температура двигателя стала меньше..." не наступало?...
Приемлемым вариантом была бы какая-нибудь доступная в приложении или на сайте мониторинга заметная кнопка "зимний режим", которую пользователь может использовать без программирования. И вроде бы можно создать программу ГЛ, назначить для её вызова кнопку и поднимать переменную гибкой логикой, но 1. Не видно состояние этой переменной в приложении 2. Переменная гибкой логики сбросится после снятия питания с блока.
Спасибо тем, кто дочитал )
Customer support service by UserEcho
Покиньте, пожалуйста, идею
Идея поКинула чат))))
Не совсем понял что нужно достичь, сильно расписано, для понимания сложно, лучше по пунктам написать, что и когда должно работать.
Но, если я правильно понял, то идея с лог.переменной вполне удачная.
но возник вопрос - а как потом такую переменную снять, по какому условию или событию?
сразу ее и скидывайте в 0, по условию АЗ\ДЗ завершен.
А машина то какая и система? Совсем ни одного входа не осталось?
kia Sorento 2007, s96v2.
Входов не осталось, даже если что-нибудь из входов освободится, то будет в первую очередь задействовано под контроль свечей накала.
Если переменную скинуть сразу при старте или по завершению работы двигателя, то при последующем запуске не остывшего двигателя догреватель не включится, например через полчаса стоянки. А без догревателя мотор зимой выше 70 градусов не нагревается, высокий расход топлива, холод в салоне и т.п. проблемы дизелистов. А дистанционный запуск может не состояться до следующей зимы, например, частый сценарий поездки - прогрел мотор котлом и запустил с ключа, чтобы не коптить воздух и лишнее время не шуметь ранним утром у дома. С переменной есть еще один минус - лютый мороз, когда не выключатель регулярный автозапуск, там температура ОЖ вообще может не падать. Поэтому таки и надо выносить датчик из салона на улицу, тогда можно переменную сбросить после запуска. Но остается ранее описанная ситуация "теплого гаража" .
По правильному надо брать период накопления переменной по низкой температуре сутки-двое, но не могу придумать, как красиво это сделать.
Если кратко - при включении мотора должен включиться догреватель если "зима". "Зиму" определять если температура за сутки (за двое суток, за неделю) опускалась ниже 0 градусов.
В starline 2 есть настройка - "использовать предпусковой подогреватель как догреватель". Можно установить порог Т, ниже которого он включится. Ставите 70с и он всегда включается. Ставите 30с и он уже выбирает что ему делать.
И как, по-вашему, при этом оно будет работать? Например установлен предложенный порог 30 градусов. Лето, +20, запуск двигателя - зачем-то включится догреватель. Зима, на улице -20, мотор прогрет, температура двигателя, скажем, +35. Заводим двигатель и догреватель не включается. Подставьте вместо "30 градусов" любое значение и порассуждайте аналогичным образом.
imho без забортной температуры базовый алгоритм догревателя вообще неработоспособен, только если его вручную включать и выключать весной-осенью.
Именно это я и предлагаю. Два раза в год переключаете настройку зима-лето.
Так я 10 лет так и переключаю дважды в год, кнопкой на физическом пульте котла. Но хочется автоматизации )
Задачку со звездочкой себе создали, так сказать. Еще и каналов не осталось. Тогда идем по Вашему же пути:
Сделать зимний или летний режим кнопкой из приложения не проблема, единственное - не будет индикации или обратной связи. Ну как не будет? Будет, только при каждом нажатии на кнопку в приложении сможете получить обратную связь, какой режим сейчас включен. Соответственно эта кнопка будет переключать логическую переменную туда сюда (допустим 0- летний режим, 1 - зимний режим), а всю остальную логику уже пишите от этой переменной.
UPD: есть конечно одна безумная идейка в моей голове, ноооо на нее нужно хотя бы один свободный выход, а он у Вас по идее должен был остаться, это минусовой выход на оранжевом проводе для СМЗ.
выходов пара штук есть, и есть r6 под капотом с не задействованными каналами блокировки
котел Бинар 5s, но номер блока ES96 S112 и прошивку с управлением по цифровой шире Бинарном туда не поставить, увы
Ну тогда сейчас зарисую, на пальцах не объяснить, будет работать или нет, не знаю, но "в голове" как будто сработает, может просто наведет на какие-то мысли.
оранжевый "потрачен" на блокировку ) Но не суть
Вот смотрите, датчик температуры (комплектный) по факту терморезитор, который меняет свое сопротивление от температуры. Купить второй такой датчик, думаю не особая проблема, отдельно в продаже они есть. Вобщем берем второй датчик, монтируем его "на улице", как Вы ранее описывали, в том месте, где нужно измерять температуру окружающего воздуха. Берем обычное 5ти контактное реле, собираем вот такую "петрушку" и пишем 2 программки.
ГЛ: (допустим свободный выход это оранжевый)
Программа 1:
Событие : Получена команда на ДЗ,
Условия (как будто бы и не нужны)
Действие: 1) гибкие аналоговые выходы: оранжевый - включить, прервать если АЗ\ДЗ завершен.
2) Установить логическую переменную в 1.
Программа 2:
Событие: Двигатель завелся с АЗ\ДЗ
Условия: 1) Доп.параметры: Температура двигателя ниже 0,
2) Логическая переменная установлена в 1
Действие: 1) Установить логическую переменную в 0
2) Запустить догреватель.
Сложно моделировать в голове, Но логика такая: Когда Вы отправили команду на ДЗ, датчик перекинуло на температуру уличную. Далее происходит запуск ДВС, на это дело не менее 5 секунд думаю уйдет, и включится программа по событию двигатель запущен с АЗ\ДЗ. Далее в этой программе на входе уже будет уличная температура, и если на улице холодно (не зависимо от температуры двигателя) при этом по логической переменной это был именно ДЗ, а не АЗ, включится догреватель. Логическая сбросится, а доп канал выключится по окончанию АЗ\ДЗ. Тем самым все вернется обратно, к следующему запуску. НО при этом, во время АЗ, не включится первая программа и соответственно не сработает и вторая, т.е. при АЗ догреватель включаться не будет.
Спасибо.
Идея понятна, но, imho, слишком сложно и с большим количеством возможных состояний. Плюс что будет с сигналкой в момент переключения датчиков, успеет почуять обрыв датчика?...
У меня R6, соответственно датчик температуры двигателя подключен к нему. Пожалуй будет правильнее пожертвовать температурой в салоне (все равно никогда не смотрю) и завести вместо нее датчик внешней температуры, ну и запускать догреватель уже от нее.
У меня и программ гибкой логики осталось не так много на самом деле )
Со своей стороны могу предложить программу, которая взводит переменную "ЗИМА", если температура двигателя дважды опустилась ниже 0 (при условии, что после первого понижения был либо запуск двигателя, либо-просто потеплело...)
"ЗИМА" - переменная 2 в единицезима_FL.slc
спасибо. проблема как её потом корректно сбросить )
Ну, к примеру, если через 1-2-3-4 часа после остановки двигателя его температура выше 0...
Вот, например, проверка темп через 400 мин после остановки: зима-лето_FL.slc
Плюс что будет с сигналкой в момент переключения датчиков, успеет почуять обрыв датчика?...
не успеет, у Вас начнется процесс ДЗ.
и завести вместо нее датчик внешней температуры, ну и запускать догреватель уже от нее.
тоже как вариант, тем более из-за длины проводов он скорее всего будет врать, но это можно программно подкорректировать