Умный термостат (как учитывать тепловую инерцию?)
- Войдите на сайт для отправки комментариев
ЗАдача казалось бы проста - удерживать температуру внутри заданных рамок min и max ниже комнатной (т.е. своего рода холодильник).
первый приходящий в голову способ:
if (t>=max) {включать охлаждение}
esle if (t<=min){выключать охлаждение}
Но предвижу, что на практике он приведет к тому, что показатели не будут укладываться в рамки, а будут скакать волнами, т.к. система имеет некоторую инерцию - охлаждение продалжается даже после отключения, и включается тоже не мгновенно.
Ситуация осложняется также тем, что эта инерция не постоянна и зависит времени года (т.е. от внешней температуры) и от содержимого камеры (пустой холодильник остынет быстрее полного).
Так что чтобы создать систему с минимальной погрешностью, нужно как-то усложнять алгоритм, чтобы он учитывал динамику изменения температуры и внешние факторы, и начинал процесс охлаждения\нагрева заранее, до достижения границ.
В голову приходит пока такой вариант:
отслеживать скорость изменения температуры, и на основании этого делать прогноз. Как-то так:
Tcurrent=Temp(); nowTime=millis(); if (Tprev>Tcurrent){//если температура изменилась (охлаждение) DeltaTime=nowTime-prevTime;//за какой период Tdelta=Tprev-Tcurrent;//на сколько TminTime=((Tcurrent-Tmin)*Tdelta)/DeltaTime; //через сколько достигнем минимума } Tprev=Tcurrent; prevTime=nowTime;
... Пока все что смог придумать... как управлять на основании этого охлаждением так и не допер.
А ведь тенденция может быть и не линейной, да к тому же надо защититься от погрешностей датчиков и т.п. чтобы не дергать технику слишком часто.
http://playground.arduino.cc/Code/PIDLibrary
http://we.easyelectronics.ru/Theory/pid-regulyatory--dlya-chaynikov-prak...
ЗАдача казалось бы проста - удерживать температуру внутри заданных рамок min и max ниже комнатной (т.е. своего рода холодильник).
...
...
А ведь тенденция может быть и не линейной, да к тому же надо защититься от погрешностей датчиков и т.п. чтобы не дергать технику слишком часто.
"И ты, Брут?"(с) Я вот тоже озаботился выбросить из холодильника механический термостат и заардуинить электронный ))
А по последнему вопросу, чтобы не дергать технику часто нужно либо иметь возможность регулировать обороты при постоянной работе, либо задаться макимальными погрешностями и включать технику с минимальной частотой, но на максимально потребное время... как иначе?
тут важно определиться что приоритетно, точность выдерживания температурных параметров, минимализировать потребление или снизить износ техники.
Компрессор бытового холодильника после выключения должен как минимум 3-4 минуты остыть иначе он может не запуститься.
мдааа. забавные зверьки живут в ваших головах :) вы видимо никогда не сталкивались с системами отопления.. потому и бродят тараканы мутированые в черепных коробках :)
давайте я вам задам направление.. не то которое вы подумали изначально... и так, зачем в доме отопление? подсказываю, потому что дом теряет тепло!.. дальше вам продолжать?
О каких температурах речь?От минус 10 до плюс 40 можно сделать.Если нет проблем с экономией электроэнергии то система с компресором и электромагнитным клапаном может держать температуру в пределах" +"
"-" 0,1 градуса.Компрессор работает постоянно.Но без PID не обойдешся. Сделано лично много раз при использовании термостатов с ПИД регулировкой.С русским проблемы (сорри) не помню как называется испритель -охладитель по русски(тот который отдает холод в камеру). но желательно чтобы он был с принудительным обдувом.
давайте я вам задам направление.. не то которое вы подумали изначально... и так, зачем в доме отопление? подсказываю, потому что дом теряет тепло!.. дальше вам продолжать?
Тараканов из черепных каробок можно изгнать ПИД-регулятором
давайте я вам задам направление.. не то которое вы подумали изначально... и так, зачем в доме отопление? подсказываю, потому что дом теряет тепло!.. дальше вам продолжать?
Тараканов из черепных каробок можно изгнать ПИД-регулятором
Однако голову нужно охладить предварительно...