ПИД его в качель.
- Войдите на сайт для отправки комментариев
Имеется печь, муфельная.
имеется блок регуляции на основе ардуины и твердотельного реле меняющего мощность.
алгоритм ПИД на основе стандартной библиотеки.
проблема следующая - печь очень инертная.
работает так - началось падение температуры - пид начал прибавлять - температура продолжает падать - он еще прибавляет и т.д. и вот через какое то время температура начинает расти.
НО туда уже ввалено столько мощности что рост температуры таков что она на 40 градусов переваливает через желаемую.
соответственно потом оно остывает и по новой.
получаем вместо удержания - циклы колебания с дельтой в 50-60 градусов.
по идее в пиде есть интегральная составляющая которая должна это компенсировать. но один цикл - 25-30 минут. и ждать несколько часов пока все устаканится нет никакого резона.
Хочу совета.
провал по температуре удалось подбором коэффициентов свести до 10 градусов, потом соотв перелет на 40 и цикл повторяется.
стандартного ПИД не бывает, его надо пересчитывать под конкретный случай. ТАУ в помощь.
http://brettbeauregard.com/blog/2012/01/arduino-pid-autotune-library/
стандартного ПИД не бывает, его надо пересчитывать под конкретный случай. ТАУ в помощь.
мне кажется если начать молиться будет быстрее и эффективнее :)
автоподборку коэффициентов видел это не то немного, кроме того я уже вторую неделю копошусь, с коэффициентами все понятно.
тут скорее надо делать нечто под названием предиктор смита :) ну или его имитацию исходя из того что мне известно поведение печи. пока так и сделал, удалось диапазон сузить до 10-15 градусов при желаемых 400, что уже вполне приемлемо. и я еще вижу резерв как пару градусов убрать :)
Видел в каком-то радиожурнале схемку, которая управляет нагревателем через симисторный регулятор, но открывает его по закону длиннопериодной ШИМ. Блок-схема: генератор медленной (длиннопериодной) пилы подан на один из входов компаратора, на второй вход подан сигнал от датчика температуры (тут надо с уровнями не пролететь), выход компаратора открывет/закрывает симистор (через микросхему - детектор нулевого напряжения сети). Если всё правильно отрегулировать, то по мере приближения к заданной температуре уменьшаются периоды включения нагревателя. Колебания очень небольшие получаются - если я правильно помню, что-то около половины градуса или меньше. Но это был термостат.
А что у Вас получилось в конце концов? Судя по молчанию - либо всё хорошо, либо всё плохо.