Прошло 2 года, с момента, как начал собирать ПИД регулятор по Вашему видео. Сейчас запустил только радиаторную сеть (отопление в частном доме, стоят 2 клапана для радиаторной сети и теплых полов, а теплоноситель подается из теплоаакумулятора). Вернулся к плейлисту за помощью для настройки)))) В принципе, он более мене работает с настройками внесенными Вами в проект по умолчанию)))) Спасибо!
Дмитрий, а есть опыт настройки многоступенчатых ПИД регуляторов? Я имею реальную систему приточной вентиляции с четырьмя группами тэн (включаются пускателями), и контроллер с ПИД-регулятором, только вот в контроллере включение ступеней пока сделано через задержку в 30 секунд. Естественно нифига не работает. Завтра буду пробовать настраивать как одноступенчатую систему при помощи ваших подсказок с этого видео, но что потом делать со всеми ступенями пока для меня загадка, интуиция подсказывает, что тупо задержка в 30 секунд не поможет ))
День добрый. Ступенчатость не имеет принципиального значения (только точность регулирования). Про 30 сек я ни чего не понял. Вообще если есть 4 одинаковых ступени, то решается это так 0-25% (1 ступень), 25-50% (2 ступени) и т.д. Плюс добавляют гистерезис 5% например, что бы на границах диапазонов "дребезга" не было
Все по делу, но вот тема формул не совсем раскрыта. Почему-то разные производители регуляторов и ПЛК используют разные формулы в оборудовании MV = 100/Kп *(dE+1/Ti*интеграл dE/dt + Td*dE/dt) или MV = Kп *(dE+1/Ti*интеграл dE/dt + Td*dE/dt), где MV - управляющая величена (manipulated value), задание для исполнительного механизма(привода, нагревателя и др.) В одном случае 100/Кп при увеличении Кп усиление уменьшается, в другом при увеличении Кп коэффициент усиления увеличивается, поэтому при настройка нужно знать формулу в регуляторе, чтобы потом не говорить, что регулятор не работает правильно. Так же бывает если регулятор самописный не предусматривается отключение интегральной составляющей при Ти=0, величина 1/Ti становиться бесконечно большой.
День добрый! Вы всё правильно говорите. Формула это очень важно! А путаница с коэф. усиления и полосой пропорциональности постоянно возникает. Если будет время, то посмотрите ruclips.net/video/qJt-AtaccJE/видео.html и там в комментах тоже обсуждали эту полосу пропорциональности.
Вечер добрый! Я в каком-то из видео рассказывал как у меня это соединение сделано. Вспомню ссылку приложу. Всё сделано на стандартных протоколах. Суть такая: через Modbus OPC сервер у меня это сделано. В Ардуино прошит Modbus slave, а OPC как "прокладка" между Scada. Можно читать любой прогой, которая поддерживает OPC или Modbus напрямую.
Если у датчиков температуры (медное термосопротивление 50М) большая инерционность из-за толстой гильзы и залитого масла, то регулятор будет честно давать противоимпульсы вплоть до закрытия или открытия привода, пытаясь изменить Т, теплоноситель уже остыл, а датчик ещё горячий, либо наоборот. У меня привод клапана с временем хода 120 сек колбасит из одного крайнего в другое крайнее положение.
День добрый, Вадим! Металл и масло хорошо проводят температуру. Думаю что проблема именно в настройках регулятора (очень быстрые). Попробуйте уменьшить П на 50% и увеличить И на 50%.
Дмитрий добрый день. Подскажите, про систему регулировки, поддержания температуры помещения. Если переделать управление трехходовым клапаном в котельной, не по температуре улицы, как сейчас, а по заданной температуре помещения. Здесь система будет очень инерционна. Какие коэффициенты пид ? Что думаете ? Я в интернете не нашел про регуляторы на постоянную температуру помещения
День добрый! Это вполне реально. У меня даже на канале такой ролик есть (там 2 части, во 2 части слева экран это как раз моделирование такой системы ruclips.net/video/CASP6EHvqRo/видео.html ). Коэффициенты "медленные" нужны. Типо Кр=0,5 или меньше, а Ти=400 и больше.
Дмитрий добрый день, расскажите пожалуйста как этой программой толком пользоваться, а то вроде как ролики ваши смотришь, всё понятно, а что это и как что-то похожее смоделировать самому непонятно.
@@dimanipox7223 вообще есть специальные программы для моделирования и всё такое. В моём случае всё сильно упрощено. В качестве модели объекта я использую апериодическое звено (А-звено). У него есть 2 параметра: усиление и время инерции. Например усиление=5 С/%, время инерции=10 сек. Если на вход такого объекта подать управляющее воздействие 1%, то выходе через 10 секунд будет 5 С (причём нарастание будет по экспоненте, то есть сначала резко, а том с замедлением). Теория автоматического управления оперирует вот такими всякими звеньями, пытаясь описать реальные процессы :))). Вот как-то так. А SCADA-система это больше "отображалка" информации (в моём случае www.adastra.ru/products/dev/scada/ бесплатная версия), но которая позволяет плюс ко всему "подкладывать" различные процессы, логику и т.д. Если вам интересно, то я готов поделиться таким "имитатором" и снять видео как пользоваться/инсталировать и т.п.
@@dimalimite В процессе допиливания контроллера, супербюджетного, Ардуино, 7 сегм. индикаторы, три кнопки, потенциометр, мосфеты и симисторы. С удобной настройкой, уже 10 страниц скетча написал, думаю в 32кб поместится. Сегодня вот придумал как улучшить PID алгоритм :))
@@dimalimite так вот именно, что я что-то настроил, а теперь именно пытаюсь понять на, что влияют коэффициенты, и во всех обзорах почему-то только пропорциональный визуально более мене описывают, мол настройте колебания а потом по формуле выбейте Ки и Кд, а мне именно они инересуют как влияют на график.
Дмитрий, вечер добрый. Да влияет, но не спрашивайте меня как :). Если хотите погрузится в эту тему, то могу порекомендовать В.Я.Ротач "Теория автоматического управления" глава "Системы управления с цифровыми контроллерами"
Два Ахилла - это силла. Что такое «время цикла»? Скан контроллера? А какова динамика вашего процесса? Т процесса < 10 сканов контроллера? Тогда я заинтригован, и впрямь придется освежить «дискретное» ТАУ. Или речь о кривой настройке ПИД-блоков/инструкций. Т.е. в блоке/инструкции указали одну delta t , а вызываете блок/инструкцию через другие периоды времени? Кста не дурно проверять и простое масштабирование входной величины по отношению к выходу это тоже частая причина «неправильных» коэффициентов ПИД и «не работающего ТАУ» Так о чем речь?
@@MaxX-g1w сколько сюда уже заинтригованных знатоков регуляторов приходило :))) Не надо никакой интриги. Если есть, что по делу написать, то лучше сразу пишите. Лучше с примерами. Производитель Х, на регуляторе Y, не использует переменной цикла регулятора/интервала квантования/времени дискретизация и т.д. (кто как называет), т.к. считает, что этого не требуется и ПЛК работает так быстро, что можно использовать формулы для аналогового регулятора.
Нет ни какой интриги. Если вопрошавший ответит на мои вопросы, то будет пища для размышлений/тема для разговора. А посылать человека сразу в… "Системы управления с цифровыми контроллерами", по-моему это жестко )))
@@MaxX-g1w Вопрошавший ответит конечно. ПИД регулятор управляет температурой в доме, контроллер каждые 3 секунды расчитывает изменение выходного сигнала, если изменить это время на 10 секунд нужно ли корректировать коэффициенты ПИД регулятора
Я вот сейчас настраиваю уровни, там наоборот. При наличии внешних колебаний системы, коэффициент передачи нужно увеличивать, тогда их амплитуда уменьшается. А так, спасибо за видео:)
Не подскажу, это стандартный импульсный ПИД регулятор в среде для ABB 800F. Перед настройкой, если не трогать клапан в принципе, уровень колеблется с амп. более 100% (конденсат в подогревателе). Но увеличивая и коэффициент, и время, удалось уменьшить до 20%... Уменьшая коэффицет, длительность импульса на клапан уменьшается, и уровень колыхается больше. Возможно, время нужно увеличивать многократно больше, пока не пробовал. Не знаю, защитывать эти колебания за те, которые нужно получать самим:)
Всем тем, кто говорит «ТАУ на практике не применима» и «настраивают ПИД» при помощи «граблей, бубна и напильника» посвящается (настраивают не ПИД, а замкнутый контур): 9:00 данного видео. По реакции на ступенчатое воздействие, очевидно, что объект управления хорошо описывается инерционным звеном 1-го порядка (в начале переходной кривой виден явный «угол», на инерционностях более высокого порядка появляются характерные «лапка и скругление») Передаточная функция ОУ Wоу(s) = k / (T*s + 1) T (на видео t3) = 17 k (на видео B/A) = 35 / 5 = 7 форма записи регулятора Wр(s) = kp + ki/s + kd*s Передаточная функция замкнутой системы с ПИ-регулятором по каналу задающее воздействие -> выход ОУ W(s) = ((k / (T*s + 1) ) * (kp + ki / s)) / (1 + (k / (T*s + 1) ) * (kp + ki / s)) = k*(kp*s + ki) / (T*s^2 + s * (k*kp + 1)+ k*ki) Характеристическое уравнение системы (знаменатель передаточной функции): T*s^2 + s * (k*kp + 1) + k*ki Квадрат двучлена (s + r)^2 = s^2 + 2*r*s + r^2 Очевидно, что корнями уравнения (s + r)^2 = 0 будет s = -r Вычислим kp и ki так, чтобы конями ХУ системы были - r s^2 + s * 2*r + r^2 s^2 + s * (k*kp + 1) / T + k*ki / T (k*kp + 1) / T = 2*r => kp = (2*r*T - 1) / k k*ki / T = r^2 => ki = r^2 * T / k очевидно, что r не может быть меньше 1/2T иначе kp < 0 r - по заумному запас устойчивости системы, а на практике коэффициент агрессивности управления, т.е. чем r больше, тем быстрее и «жестче» система пытается выйти на задание. Модель всегда не верна. Т.е. модель описывает некоторые свойства объекта в некоторых условиях, при других условиях могут «всплыть новые подводные камни». Т.е. увеличение r (агрессивности управления) приведет к тому, что проявятся свойства объекта не учтенные в модели. В данном случае «неучтенку» видно не вооруженным глазом: управляющее воздействие наносится с шагом в 3 секунды. Линеарезировать (описать ЛДУ или Лапласом) ИМ (даже идеальный) я не знаю как, но можно эмитировать tго «негативное» воздействие. Я добавлю в модель инерционность с постоянной времени = 2/3 от временной задержки вносимой ИМ т.е. Tим = 3 *2/3 = 2 Передаточная функция замкнутой системы с ПИД-регулятором по каналу задающее воздействие -> выход ОУ W(s) = ((k / (T*s + 1)) * 1 / (Tим*s + 1) * (kp + ki/s + kd*s)) / (1 + (k / (T*s + 1)) * 1 / (Tим*s + 1) * (kp + ki/s + kd*s)) = k* (kp*s + ki + kd*s^2) / (T*Tим*s^3 + (T+Tим+k*kd)*s^2 + (1+k*kp)*s + k*ki) Характеристическое уравнение системы (знаменатель передаточной функции): T*Tим*s^3 + (T+Tим+k*kd)*s^2 + (1+k*kp)*s + k*ki Куб двучлена (s + r)^3 = s^3 + 3*r*s^2 +3*r^2*s + r^3 s^3 + 3*r * s^2 + 3*r^2 *s + r^3 s^3 + (T+Tим+k*kd) / (T*Tим)*s^2 + (1+k*kp) / (T*Tим)*s + k*ki / (T*Tим) откуда найдем kp = (3*T* Tим *r^2 - 1) / k ki = (T* Tим *r^3) / k kd = (3*T* Tим *r - T - Tим) / k r > 1 / (3*T* Tим)^0.5 r > (T+Tим) / (3*T* Tим) Судя по звездам форма записи регулятора в видео Wр (s) = kп * (1 + 1 / (Ti*s) + Td*s) тогда kп = kp Ti = kp / ki Td = kd / kp Базовое ТАУ и арифметика за 8-й класс… PS (попробуй вычислить коэффициенты при r = 0.225)
Ардуина задаёт положение клапана, я его читаю ОРС-сервером и передаю в SCADA-систему, в которой реализована модель объекта (А-звено с небольшим запаздыванием). В ответ на воздействие, модель формирует выход температуры, который через ОРС-сервер возвращается в Ардуину. То есть Ардуина "думает", что работает с реальным процессом.
А я же в начале говорю вроде про модель+реальный контроллер и как работает и т.п. :). А может и забыл сказать :(. Да там достаточно низкая инерция в модели задана чтобы долго сильно не ждать. И вот даже на таком простом объекте не получается сразу попасть в настройки, использую стандартные методы настройки, а когда это реальный объект, то всё это становится ещё печальнее.
@@dimalimite я сейчас как раз пересматриваю всё с прикладной точки зрения.и получается что настройка системы по датчику температуры внутри помещения. а не по температуре теплоносителя дает косвенность. инертность системы(стяжка+ ТП) дает промах из-за задержек реакции.....бренность существования не дает мне покоя последние сутки ))))
@@stell_hawk это нормальное состояние :))). Регулировать по температуре воздуха в помещение вполне реально. Нужны более "медленные" настройки. А у вас есть объект для экспериментов?
Нужно переходить на каскадное соединение регуляторов (два регулятора) и искать промежуточную переменную(точку) в этой же системе, которая бы имела относительно быстрый отклик. Вот типа такого ruclips.net/video/UEiUfQ21NVg/видео.html
Создание модели объекта это hard way. Долго, дорого и ненадежно. У объекта в процессе запросто могут измениться параметры и условия работы. Проще и быстрее создать систему управления, которая самостоятельно обучается правильному и точному управлению объектом. Для этого собственно и существует раздел в математике "нечеткая логика" (fuzzy logic). И да. При реальных настройках ПИД система вполне себе раскачивается при определенном П. Метода Зиглера вполне работает на практике. Качание происходит без выбега за пределы допустимых значений не доходя до уставки. Вполне работет и толчок. Удобно когда большая печь с инерцией и большим периодом колебаний, чтобы не настраивать неделю.
День добрый! Да в реальном мире ни кто модели и не создаёт :). Я делал fuzzy-регулятор. Ни чем не помогает он, да и не обучается ни как сам по себе :(. Это просто регулятор и всё. Всё тоже самое (на мой взгляд), так же требуется правильное задание лингвистических переменных. Расскажите поподробнее о своём опыте с fuzzy-регулятором. ПИД-регулятор вообще не робастный алгоритм и шаг вправо/шаг влево возникают колебания :). Это так и есть. По поводу Зиглера - всё работает, но надо допилить напильником :))).
День добрый! Эти настройки были получены для именно МОЕГО объекта управления. У вас они будут с 99% вероятностью другие! А сама методика не зависит от того что регулируем (температуру, давление, расход или что-то ещё). Это видео это демонстрация применения "стандартных" подходов к настройке системы регулирования и что из этого получается.
@@dimalimite спасибо за ответ. Я не очень понял что такое стандартный подход. Имеется ввиду, что от этих параметров можно отталкиваться и потом подстраивать в зависимости от условий объекта и желаемых динамик регулятора?
@@impost842 в видео я показываю настройку вот по этим двум методикам kipia-portal.ru/2016/02/24/nastrojka-pid-regulyatora-2/ есть и иные, но с примерно такой же сутью. Да от настроек по этим методикам можно отталкиваться если объект управления допускает такие активные эксперименты.
@@dimalimite Вы знаете, я пробывал и не остался доволен, результат такой же как у Вас в видео и да раскачать например паровой котел мне ни кто не даст, значит метод Зиглера и подобные я не могу использовать, да он даже на симуляторе дает плохие результаты (при этом у меня есть наглядный тренд процесса). По этому не понятно какую информацию собрать о объекте и что делать с этой информацией дальше. Выставлять коэффициенты усредненные и дальше плясать на улучшение графика переходного процесса?
@@impost842 ну так про это и видео, что большинство этих методов вилами по воде писаны :). Я долго не хотел на эту тему ни чего снимать, но многие спрашивали. Кр-поменьше, Ти-побольше. Уставку процентов на 30 ниже номинала взять для начала (чтобы предохранительный клапан не стрельнул, ну и при желание можно чуток покачать процесс). Смотреть на переходный процесс и включить голову. Есть много разных "методик" как вообще пальцем в небо установить настройки и от них отталкиваться (типо Кр взять 100%/Уставка, а Ти равную времени хода привода сек... и т.п.). Но не буду вам советовать, т.к. в большинстве случаев получаются просто экстремально быстрые настройки :).
Бля, всё равно не понятно... Почему нельзя объяснить с самых азов... Например какие системы бывают и насколько инерциальны друг от друга и на основе каких датчиков и механизмов у вас в программе происходит регулирование и именно такие раскачки. От чего зависят период и амплитуда раскачивания системы? Видео вроде познавательно, но не до конца раскрыта тема, как будто с середины начал
Огонь! Спасибо, Димыч. Котлы тебя вспомнят добрым словом :)
:)))
Познавательно и темы неплохие . Всегда смотрю ВАШИ ролики.))))) Удачи
Прошло 2 года, с момента, как начал собирать ПИД регулятор по Вашему видео. Сейчас запустил только радиаторную сеть (отопление в частном доме, стоят 2 клапана для радиаторной сети и теплых полов, а теплоноситель подается из теплоаакумулятора). Вернулся к плейлисту за помощью для настройки)))) В принципе, он более мене работает с настройками внесенными Вами в проект по умолчанию)))) Спасибо!
:)
Спасибо! Помогло настроить фабричную систему подготовки воздуха. Долго колдовал, но тут пока выходит ближе всего к истине.
👍👍👍Благодарю за труд! Думаю с 3-4 просмотра "осилю", тема очень актуальная в "сегодняшнем отоплении"!!!😁😁😁
Спасибо тебе, Братан!!!!👍
Ты настоящий друг!!!🍻
Спасибо за труд!
:) Спасибо! Приятно
Дмитрий, а есть опыт настройки многоступенчатых ПИД регуляторов? Я имею реальную систему приточной вентиляции с четырьмя группами тэн (включаются пускателями), и контроллер с ПИД-регулятором, только вот в контроллере включение ступеней пока сделано через задержку в 30 секунд. Естественно нифига не работает. Завтра буду пробовать настраивать как одноступенчатую систему при помощи ваших подсказок с этого видео, но что потом делать со всеми ступенями пока для меня загадка, интуиция подсказывает, что тупо задержка в 30 секунд не поможет ))
День добрый. Ступенчатость не имеет принципиального значения (только точность регулирования). Про 30 сек я ни чего не понял. Вообще если есть 4 одинаковых ступени, то решается это так 0-25% (1 ступень), 25-50% (2 ступени) и т.д. Плюс добавляют гистерезис 5% например, что бы на границах диапазонов "дребезга" не было
Все по делу, но вот тема формул не совсем раскрыта.
Почему-то разные производители регуляторов и ПЛК используют разные формулы в оборудовании MV = 100/Kп *(dE+1/Ti*интеграл dE/dt + Td*dE/dt) или MV = Kп *(dE+1/Ti*интеграл dE/dt + Td*dE/dt), где MV - управляющая величена (manipulated value), задание для исполнительного механизма(привода, нагревателя и др.)
В одном случае 100/Кп при увеличении Кп усиление уменьшается, в другом при увеличении Кп коэффициент усиления увеличивается, поэтому при настройка нужно знать формулу в регуляторе, чтобы потом не говорить, что регулятор не работает правильно.
Так же бывает если регулятор самописный не предусматривается отключение интегральной составляющей при Ти=0, величина 1/Ti становиться бесконечно большой.
День добрый!
Вы всё правильно говорите. Формула это очень важно! А путаница с коэф. усиления и полосой пропорциональности постоянно возникает.
Если будет время, то посмотрите ruclips.net/video/qJt-AtaccJE/видео.html и там в комментах тоже обсуждали эту полосу пропорциональности.
Дотыкался что верхний-красный диапазон показывает трёхзначное число без запятой 224 град при комнатной температуре?
Супер видео
Коротко о качестве звука:
"Четыресто пятнадцатый, база ответте.
Четыресто пянадцатый, база прием."
Есть такое дело :)
Вы забыли к названию этого видео добавить молоток
А что, всё-таки, с периодом дискретизации? Нужно ли умножать/делить, как рекомендовалось в первом случае, учитывая, что регулятор "дискретный"?
Дмитрий, запилите видио с тем как подружить программу симуляции (может с обзором других программ) на ПК с Ардуино или другим МК
Вечер добрый!
Я в каком-то из видео рассказывал как у меня это соединение сделано. Вспомню ссылку приложу.
Всё сделано на стандартных протоколах. Суть такая: через Modbus OPC сервер у меня это сделано. В Ардуино прошит Modbus slave, а OPC как "прокладка" между Scada. Можно читать любой прогой, которая поддерживает OPC или Modbus напрямую.
Вот тут ruclips.net/video/wOkgx-CpU2E/видео.html с 3:40
Если у датчиков температуры (медное термосопротивление 50М) большая инерционность из-за толстой гильзы и залитого масла, то регулятор будет честно давать противоимпульсы вплоть до закрытия или открытия привода, пытаясь изменить Т, теплоноситель уже остыл, а датчик ещё горячий, либо наоборот. У меня привод клапана с временем хода 120 сек колбасит из одного крайнего в другое крайнее положение.
День добрый, Вадим!
Металл и масло хорошо проводят температуру.
Думаю что проблема именно в настройках регулятора (очень быстрые). Попробуйте уменьшить П на 50% и увеличить И на 50%.
Дмитрий добрый день. Подскажите, про систему регулировки, поддержания температуры помещения. Если переделать управление трехходовым клапаном в котельной, не по температуре улицы, как сейчас, а по заданной температуре помещения. Здесь система будет очень инерционна. Какие коэффициенты пид ? Что думаете ? Я в интернете не нашел про регуляторы на постоянную температуру помещения
День добрый!
Это вполне реально.
У меня даже на канале такой ролик есть (там 2 части, во 2 части слева экран это как раз моделирование такой системы ruclips.net/video/CASP6EHvqRo/видео.html ).
Коэффициенты "медленные" нужны. Типо Кр=0,5 или меньше, а Ти=400 и больше.
Дмитрий добрый день, расскажите пожалуйста как этой программой толком пользоваться, а то вроде как ролики ваши смотришь, всё понятно, а что это и как что-то похожее смоделировать самому непонятно.
@@dimanipox7223 TRACE MODE SCADA - система вас интересует?
@@dimalimite интересует сам принцип моделирования процессов, хотя наверное в одном ролике или даже нескольких этого не объяснить?
@@dimanipox7223 вообще есть специальные программы для моделирования и всё такое. В моём случае всё сильно упрощено. В качестве модели объекта я использую апериодическое звено (А-звено). У него есть 2 параметра: усиление и время инерции. Например усиление=5 С/%, время инерции=10 сек. Если на вход такого объекта подать управляющее воздействие 1%, то выходе через 10 секунд будет 5 С (причём нарастание будет по экспоненте, то есть сначала резко, а том с замедлением). Теория автоматического управления оперирует вот такими всякими звеньями, пытаясь описать реальные процессы :))).
Вот как-то так.
А SCADA-система это больше "отображалка" информации (в моём случае www.adastra.ru/products/dev/scada/ бесплатная версия), но которая позволяет плюс ко всему "подкладывать" различные процессы, логику и т.д.
Если вам интересно, то я готов поделиться таким "имитатором" и снять видео как пользоваться/инсталировать и т.п.
Дмитрий. Звук. В наушниках невозможно слушать.
Спасибо за видео!
Заказал Деду Морозу на новый год новый микрофон :)
Коэффициенты никто не запрещал менять в процессе. Получается самонастраивающийся PID регулятор. :)) Или PID регулятор с гистерезисом.
День добрый, Сергей!
Как инкубатор ваш?
@@dimalimite В процессе допиливания контроллера, супербюджетного, Ардуино, 7 сегм. индикаторы, три кнопки, потенциометр, мосфеты и симисторы. С удобной настройкой, уже 10 страниц скетча написал, думаю в 32кб поместится.
Сегодня вот придумал как улучшить PID алгоритм :))
Не плохо, но хотелось-бы вообще без формул чисто визуально определить с нуля коэффициенты, глядя на диаграмму, путем практического подобора.
День добрый!
После настройки нескольких систем вы именно так и будите делать :).
@@dimalimite так вот именно, что я что-то настроил, а теперь именно пытаюсь понять на, что влияют коэффициенты, и во всех обзорах почему-то только пропорциональный визуально более мене описывают, мол настройте колебания а потом по формуле выбейте Ки и Кд, а мне именно они инересуют как влияют на график.
Вечер добрый!
Записал вам видео ответ ruclips.net/video/CgKPvyRrpzo/видео.html
Дмитрий, подскажите пожалуйста вляет ли время цикла на коэффициенты ПИД регулятора
Дмитрий, вечер добрый. Да влияет, но не спрашивайте меня как :). Если хотите погрузится в эту тему, то могу порекомендовать В.Я.Ротач "Теория автоматического управления" глава "Системы управления с цифровыми контроллерами"
Два Ахилла - это силла.
Что такое «время цикла»?
Скан контроллера? А какова динамика вашего процесса? Т процесса < 10 сканов контроллера? Тогда я заинтригован, и впрямь придется освежить «дискретное» ТАУ.
Или речь о кривой настройке ПИД-блоков/инструкций. Т.е. в блоке/инструкции указали одну delta t , а вызываете блок/инструкцию через другие периоды времени?
Кста не дурно проверять и простое масштабирование входной величины по отношению к выходу это тоже частая причина «неправильных» коэффициентов ПИД и «не работающего ТАУ»
Так о чем речь?
@@MaxX-g1w сколько сюда уже заинтригованных знатоков регуляторов приходило :)))
Не надо никакой интриги. Если есть, что по делу написать, то лучше сразу пишите. Лучше с примерами. Производитель Х, на регуляторе Y, не использует переменной цикла регулятора/интервала квантования/времени дискретизация и т.д. (кто как называет), т.к. считает, что этого не требуется и ПЛК работает так быстро, что можно использовать формулы для аналогового регулятора.
Нет ни какой интриги.
Если вопрошавший ответит на мои вопросы, то будет пища для размышлений/тема для разговора.
А посылать человека сразу в… "Системы управления с цифровыми контроллерами", по-моему это жестко )))
@@MaxX-g1w Вопрошавший ответит конечно. ПИД регулятор управляет температурой в доме, контроллер каждые 3 секунды расчитывает изменение выходного сигнала, если изменить это время на 10 секунд нужно ли корректировать коэффициенты ПИД регулятора
А не поделитесь исходниками модели? Или формулой...
Модель в SCADA TraceMode "живёт". В каком-то видео (может и в этом) я показывал её
@@dimalimite это понятно, я про код программный. На него бы взглянуть одним глазком)))
Я вот сейчас настраиваю уровни, там наоборот. При наличии внешних колебаний системы, коэффициент передачи нужно увеличивать, тогда их амплитуда уменьшается. А так, спасибо за видео:)
День добрый!
Расскажите поподробнее про вашу систему и что она делает. Может такое быть, что у вас не коэф. усиления, а полоса пропорциональности?
Скорее всего именно так. И тогда всё логично
Не подскажу, это стандартный импульсный ПИД регулятор в среде для ABB 800F. Перед настройкой, если не трогать клапан в принципе, уровень колеблется с амп. более 100% (конденсат в подогревателе). Но увеличивая и коэффициент, и время, удалось уменьшить до 20%... Уменьшая коэффицет, длительность импульса на клапан уменьшается, и уровень колыхается больше. Возможно, время нужно увеличивать многократно больше, пока не пробовал. Не знаю, защитывать эти колебания за те, которые нужно получать самим:)
Имеется также блок автонастройки, пока не пробовал...
@@dimalimite Дмитрий, расскажите пожалуйста чем отличается К ус от Рх? Спасибо!
Всем тем, кто говорит «ТАУ на практике не применима» и «настраивают ПИД» при помощи «граблей, бубна и напильника» посвящается (настраивают не ПИД, а замкнутый контур):
9:00 данного видео. По реакции на ступенчатое воздействие, очевидно, что объект управления хорошо описывается инерционным звеном 1-го порядка (в начале переходной кривой виден явный «угол», на инерционностях более высокого порядка появляются характерные «лапка и скругление»)
Передаточная функция ОУ
Wоу(s) = k / (T*s + 1)
T (на видео t3) = 17
k (на видео B/A) = 35 / 5 = 7
форма записи регулятора
Wр(s) = kp + ki/s + kd*s
Передаточная функция замкнутой системы с ПИ-регулятором по каналу задающее воздействие -> выход ОУ
W(s) = ((k / (T*s + 1) ) * (kp + ki / s)) / (1 + (k / (T*s + 1) ) * (kp + ki / s)) = k*(kp*s + ki) / (T*s^2 + s * (k*kp + 1)+ k*ki)
Характеристическое уравнение системы (знаменатель передаточной функции): T*s^2 + s * (k*kp + 1) + k*ki
Квадрат двучлена (s + r)^2 = s^2 + 2*r*s + r^2
Очевидно, что корнями уравнения (s + r)^2 = 0 будет s = -r
Вычислим kp и ki так, чтобы конями ХУ системы были - r
s^2 + s * 2*r + r^2
s^2 + s * (k*kp + 1) / T + k*ki / T
(k*kp + 1) / T = 2*r => kp = (2*r*T - 1) / k
k*ki / T = r^2 => ki = r^2 * T / k
очевидно, что r не может быть меньше 1/2T иначе kp < 0
r - по заумному запас устойчивости системы, а на практике коэффициент агрессивности управления, т.е. чем r больше, тем быстрее и «жестче» система пытается выйти на задание.
Модель всегда не верна. Т.е. модель описывает некоторые свойства объекта в некоторых условиях, при других условиях могут «всплыть новые подводные камни». Т.е. увеличение r (агрессивности управления) приведет к тому, что проявятся свойства объекта не учтенные в модели.
В данном случае «неучтенку» видно не вооруженным глазом: управляющее воздействие наносится с шагом в 3 секунды.
Линеарезировать (описать ЛДУ или Лапласом) ИМ (даже идеальный) я не знаю как, но можно эмитировать tго «негативное» воздействие.
Я добавлю в модель инерционность с постоянной времени = 2/3 от временной задержки вносимой ИМ т.е. Tим = 3 *2/3 = 2
Передаточная функция замкнутой системы с ПИД-регулятором по каналу задающее воздействие -> выход ОУ
W(s) = ((k / (T*s + 1)) * 1 / (Tим*s + 1) * (kp + ki/s + kd*s)) / (1 + (k / (T*s + 1)) * 1 / (Tим*s + 1) * (kp + ki/s + kd*s)) = k* (kp*s + ki + kd*s^2) / (T*Tим*s^3 + (T+Tим+k*kd)*s^2 + (1+k*kp)*s + k*ki)
Характеристическое уравнение системы (знаменатель передаточной функции): T*Tим*s^3 + (T+Tим+k*kd)*s^2 + (1+k*kp)*s + k*ki
Куб двучлена (s + r)^3 = s^3 + 3*r*s^2 +3*r^2*s + r^3
s^3 + 3*r * s^2 + 3*r^2 *s + r^3
s^3 + (T+Tим+k*kd) / (T*Tим)*s^2 + (1+k*kp) / (T*Tим)*s + k*ki / (T*Tим)
откуда найдем
kp = (3*T* Tим *r^2 - 1) / k
ki = (T* Tим *r^3) / k
kd = (3*T* Tим *r - T - Tим) / k
r > 1 / (3*T* Tим)^0.5
r > (T+Tим) / (3*T* Tим)
Судя по звездам форма записи регулятора в видео
Wр (s) = kп * (1 + 1 / (Ti*s) + Td*s)
тогда
kп = kp
Ti = kp / ki
Td = kd / kp
Базовое ТАУ и арифметика за 8-й класс…
PS (попробуй вычислить коэффициенты при r = 0.225)
Спасибо очень позновательно. только я не понял к чему подключена Ардуина? к электрическому котлу? температура чего измеряется?
Ардуина задаёт положение клапана, я его читаю ОРС-сервером и передаю в SCADA-систему, в которой реализована модель объекта (А-звено с небольшим запаздыванием). В ответ на воздействие, модель формирует выход температуры, который через ОРС-сервер возвращается в Ардуину. То есть Ардуина "думает", что работает с реальным процессом.
@@dimalimite спасибо. а я то понять никак весь ролик не мог. что за устройство так хорошо нагревает датчик.
А я же в начале говорю вроде про модель+реальный контроллер и как работает и т.п. :). А может и забыл сказать :(.
Да там достаточно низкая инерция в модели задана чтобы долго сильно не ждать. И вот даже на таком простом объекте не получается сразу попасть в настройки, использую стандартные методы настройки, а когда это реальный объект, то всё это становится ещё печальнее.
@@dimalimite я сейчас как раз пересматриваю всё с прикладной точки зрения.и получается что настройка системы по датчику температуры внутри помещения. а не по температуре теплоносителя дает косвенность. инертность системы(стяжка+ ТП) дает промах из-за задержек реакции.....бренность существования не дает мне покоя последние сутки ))))
@@stell_hawk это нормальное состояние :))).
Регулировать по температуре воздуха в помещение вполне реально. Нужны более "медленные" настройки.
А у вас есть объект для экспериментов?
Как поступить если система очень инертная ( при изменении подачи продукта на производственную линию результат на выходе будет через 5 минут)?
Нужно переходить на каскадное соединение регуляторов (два регулятора) и искать промежуточную переменную(точку) в этой же системе, которая бы имела относительно быстрый отклик. Вот типа такого ruclips.net/video/UEiUfQ21NVg/видео.html
Посмотрите с 6.40 минуты ruclips.net/video/hWUkOwfwjlg/видео.htmlfeature=shared
С 13-ой даже наверное лучше минуты
Звук конечно ужасный, но спасибо за видео.🫤
Дождусь ли я когда-нибудь комментария: "Дмитрий, как с вами связаться чтобы передать хороший микрофон?" :))))
Создание модели объекта это hard way. Долго, дорого и ненадежно. У объекта в процессе запросто могут измениться параметры и условия работы. Проще и быстрее создать систему управления, которая самостоятельно обучается правильному и точному управлению объектом. Для этого собственно и существует раздел в математике "нечеткая логика" (fuzzy logic).
И да. При реальных настройках ПИД система вполне себе раскачивается при определенном П. Метода Зиглера вполне работает на практике.
Качание происходит без выбега за пределы допустимых значений не доходя до уставки.
Вполне работет и толчок. Удобно когда большая печь с инерцией и большим периодом колебаний, чтобы не настраивать неделю.
День добрый!
Да в реальном мире ни кто модели и не создаёт :).
Я делал fuzzy-регулятор. Ни чем не помогает он, да и не обучается ни как сам по себе :(. Это просто регулятор и всё. Всё тоже самое (на мой взгляд), так же требуется правильное задание лингвистических переменных. Расскажите поподробнее о своём опыте с fuzzy-регулятором.
ПИД-регулятор вообще не робастный алгоритм и шаг вправо/шаг влево возникают колебания :). Это так и есть.
По поводу Зиглера - всё работает, но надо допилить напильником :))).
В модели была задержка?
Запаздывание было. Но уже не помню сколько...небольшая по-моему, но это не точно :). Больше года прошло уже.
Представленный метод (0.6/9/0.75) актуален для регулятора температуры?
День добрый!
Эти настройки были получены для именно МОЕГО объекта управления. У вас они будут с 99% вероятностью другие!
А сама методика не зависит от того что регулируем (температуру, давление, расход или что-то ещё).
Это видео это демонстрация применения "стандартных" подходов к настройке системы регулирования и что из этого получается.
@@dimalimite спасибо за ответ. Я не очень понял что такое стандартный подход. Имеется ввиду, что от этих параметров можно отталкиваться и потом подстраивать в зависимости от условий объекта и желаемых динамик регулятора?
@@impost842 в видео я показываю настройку вот по этим двум методикам kipia-portal.ru/2016/02/24/nastrojka-pid-regulyatora-2/ есть и иные, но с примерно такой же сутью.
Да от настроек по этим методикам можно отталкиваться если объект управления допускает такие активные эксперименты.
@@dimalimite Вы знаете, я пробывал и не остался доволен, результат такой же как у Вас в видео и да раскачать например паровой котел мне ни кто не даст, значит метод Зиглера и подобные я не могу использовать, да он даже на симуляторе дает плохие результаты (при этом у меня есть наглядный тренд процесса). По этому не понятно какую информацию собрать о объекте и что делать с этой информацией дальше. Выставлять коэффициенты усредненные и дальше плясать на улучшение графика переходного процесса?
@@impost842 ну так про это и видео, что большинство этих методов вилами по воде писаны :). Я долго не хотел на эту тему ни чего снимать, но многие спрашивали.
Кр-поменьше, Ти-побольше. Уставку процентов на 30 ниже номинала взять для начала (чтобы предохранительный клапан не стрельнул, ну и при желание можно чуток покачать процесс). Смотреть на переходный процесс и включить голову.
Есть много разных "методик" как вообще пальцем в небо установить настройки и от них отталкиваться (типо Кр взять 100%/Уставка, а Ти равную времени хода привода сек... и т.п.). Но не буду вам советовать, т.к. в большинстве случаев получаются просто экстремально быстрые настройки :).
🐝👍⭐
Я тоже пробовал на практике теоретические методики, ничего не работает!
Есть такое дело :).
Ну зачем вы нас так насилуете поиском рекомендованных вами роликов?)))
Для ленивых в описания добавьте и в какой последовательности смотреть.
:)
смотри www.termodat.ru/pdf/pid.pdf
Статья Зорин С.В., к. ф.-м. н.
зам. директора по НИОКР ООО НПП Системы контроля
Я нечего не понял из всего что ты показал
кошмар "лектор, типо"...
Спасибо за ролик, очень актуальная проблема. Деморолик про подбор параметров ruclips.net/video/qKy98Cbcltw/видео.html
Спасибо :).
Бля, всё равно не понятно... Почему нельзя объяснить с самых азов... Например какие системы бывают и насколько инерциальны друг от друга и на основе каких датчиков и механизмов у вас в программе происходит регулирование и именно такие раскачки. От чего зависят период и амплитуда раскачивания системы? Видео вроде познавательно, но не до конца раскрыта тема, как будто с середины начал