ПИД его в качель.

dedov
Offline
Зарегистрирован: 21.01.2014

Имеется печь, муфельная.

имеется блок регуляции на основе ардуины и твердотельного реле меняющего мощность.

алгоритм ПИД на основе стандартной библиотеки.

проблема следующая - печь очень инертная.

работает так - началось падение температуры - пид начал прибавлять - температура продолжает падать - он еще прибавляет и т.д. и вот через какое то время температура начинает расти.

НО туда уже ввалено столько мощности что рост температуры таков что она на 40 градусов переваливает через желаемую.

 соответственно потом оно остывает и по новой.

получаем вместо удержания - циклы колебания с дельтой в 50-60 градусов.

по идее в пиде есть интегральная составляющая которая должна это компенсировать. но один цикл - 25-30 минут. и ждать несколько часов пока все устаканится нет никакого резона.

Хочу совета.

провал по температуре удалось подбором коэффициентов свести до 10 градусов, потом соотв перелет на 40 и цикл повторяется.

Michal
Michal аватар
Offline
Зарегистрирован: 26.04.2013

стандартного ПИД не бывает, его надо пересчитывать под конкретный случай. ТАУ в помощь.

nikolaki
nikolaki аватар
Offline
Зарегистрирован: 14.02.2013
dedov
Offline
Зарегистрирован: 21.01.2014

Michal пишет:

стандартного ПИД не бывает, его надо пересчитывать под конкретный случай. ТАУ в помощь.

мне кажется если начать молиться будет быстрее и эффективнее :)

автоподборку коэффициентов видел это не то немного, кроме того я уже вторую неделю копошусь, с коэффициентами все понятно.

тут скорее надо делать нечто под названием предиктор смита :) ну или его имитацию исходя из того что мне известно поведение печи. пока так и сделал, удалось диапазон сузить до 10-15 градусов при желаемых 400, что уже вполне приемлемо. и я еще вижу резерв как пару градусов убрать :)

vicmic
Offline
Зарегистрирован: 28.05.2015

Видел в каком-то радиожурнале схемку, которая управляет нагревателем через симисторный регулятор, но открывает его по закону длиннопериодной ШИМ. Блок-схема: генератор медленной (длиннопериодной) пилы подан на один из входов компаратора, на второй вход подан сигнал от датчика температуры (тут надо с уровнями не пролететь), выход компаратора открывет/закрывает симистор (через микросхему - детектор нулевого напряжения сети). Если всё правильно отрегулировать, то по мере приближения к заданной температуре уменьшаются периоды включения нагревателя. Колебания очень небольшие получаются - если я правильно помню, что-то около половины градуса или меньше. Но это был термостат.

А что у Вас получилось в конце концов? Судя по молчанию - либо всё хорошо, либо всё плохо.