ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
29 марта
1254941 Топик полностью
Adept (01.11.2022 14:12, просмотров: 208) ответил IBAH на оно так и получается, в первом ПИ, второй ПИД, так как первый дюже медленный Д посчитать нет возможности. Построил графики устаканивания вроде как и не чего
как-то была задача сделать терморегулятор для промоборудования, где питание колбасило так, что иногда станки вставали по ошибкам (была кинута хилая воздушка, и куча станков в работе :)) ПРишлось сколхозить интегрально-нелинейный алгоритм регулирования. Суть в том 

что наблюдаем тренд изменения температуры, исходя из него вычисляем коэффициент приращения для алгоритма регулирования, начинаем цикл пропорционального регулирования. Как только видим изменение температуры - прекращаем регулирующее воздействие, и ждём устаканивания процесса. Потом, опять сравниваем с уставкой и идём на новый пропорциональный цикл. Коэффициент регулирования - высчитывается из разницы уставки и фактической температуры с поправкой на производную её изменения (тренд).


в итоге, график выхода на уставку был примерно такого вида:





Все возмущающие факторы (и температурные, и питание, и прочее, - стали пофиг :)) но скорость выхода на уставку в 2-3 раза дольше, чем ПИД. Можно играться коэффициентами и с небольшим перерегулированием (процентов в 10) получить почти то же время, что даёт ПИД. В последующем чуть усложнил, добавив предсказывание по производной и её изменении во времени, получилось побыстрее.

P.S. ПИД регуляторы не проканали, как меняются внешние условия и опять надо подбирать коэффициенты :(( а там питание так скакало, что "мама не горюй! " :((


в общем, представляем себя на месте регулятора: - чуть подкрутили регулировку - смотрим на резалт, пока не "устаканится", потом опять "подкручиваем" (а величина "подкрутки" вычисляется динамически из ошибки и темпеатурных трендов)... и так, пока не достигнем уставки, медленно, но верно :)

В общем, если возмущающие факторы скоротечны и периодические, то такой алгоритм всё сглаживает. В качестве хорошей и быстрой следящей системы , чтобы максимально оперативно адаптироваться к измененям, - малопригоден, т.к. довольно медленный. Коэффициентами можно настроить, чтобы был шустрый, но будет почти что ПИД :) который в общем является "быстрым следящим" алгоритмом, а этот - с нулевой ошибкой регулирования (интегральный) и достаточно "ленивый", но хорошо адаптируется к разным постоянным времени системы и неплохо работает при сильно (но не очень быстро) меняющихся "вводных" (т.е. не очень хорошо отрабатывает "динамику")


а вообще давно дело было, много чего позабыл (надоть как будет время поднять тему (там были мысли как замутить адаптивный самонастраиваемый алгоритм :))

...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)