Присылайте пожалуйста вопросы по ПИД регуляторам на почту:
support@owen.ru - обязательно выясним и ответим.
Присылайте пожалуйста вопросы по ПИД регуляторам на почту:
support@owen.ru - обязательно выясним и ответим.
Возвращаясь к варианту создания новой библиотеки.
Начинаем делать первые прикидки. Пока только 4 блока. Продолжаем думать дальше.
Во вложении первые прикидки. Описание и пример блоков в CoDeSys.
Все предложения, варианты и критику просьба слать сюда:
a.nikolaev@owen.ru
Последний раз редактировалось murzik; 12.10.2015 в 21:29.
Здравствуйте Андрей
Для регулятора PID_easy на мой взгляд явно не хватает задания начального положения. Что-то типа - X_Start.
Например:
После всех расчетов П, И, и Д состовляющих мы получаем желаемое положение регулирующего органа. Так вот к нему и прибавить X_Start, а затем ограничить от 0 до 100 :-)
Применение:
Необходимо регулировать ГВС на небольшой котельной. Предположим работает один котел с переходом с большого на малое горение. Температура на выходе котла прыгает на +-20 градусов.
На вход X_Start подаем –0.75*температура_котла+100.
Где:
–0.75 – весовой коэффициент (возможно изменяющийся по какому либо алгоритму)
температура_котла – температура котлового контура.
100 – коэффициент «с потолка», что бы подправить начальное положение регулирующего органа.
Разумеется сюда можно добавить обратку ГВС на входе в теплообменник и тд. Таким образом получим регулятор который сможет начать приводить в порядок объект регулирования до того как заданный параметр начнет отклонятся от задания. Итого получаем простейший и эффективный многоконтурный регулятор.
P. S. Надеюсь не слишком запутанно получилось. Понимаю что всё это можно сделать и вне регулятора, но реализовать в регуляторе будет логичнее.
Автоматизация Диспетчеризация Сервис
e-mail: ads-kaluga@mail.ru
2Николаев Андрей
Вероятно, Gans имел в виду следующее:
В ПИД заводится расчетное значение необходимое получить на выходе (0..100) (например положение 3-ходового крана в описанном случае с ГВС), а ПИД в свою очередь его корректирует (грубо говоря +/- 10%).
В двух словах, что-то вроде сумматора расченого значения с поправкой ПИД-регулятора и общим ограничением значения на выходе (0..100).
Касательно примера про ГВС: Например температура в котловом контуре 90С. По расчету, для получения температуры горячей воды 70С, нам необходимо установить 3-ходовой кран на 70% (это значение мы и заводим в "X_Start"). ПИД анализирует температуру ГВС и подправляет выходное значение относительно расчетных 70%.
П.С.
Мне бы хотелось реализовать следующий вариант:
Есть паровой котел, стоит задача поддерживать уровень воды в его барабане. Расход воды на входе и выходе (тонн пара) известны, уровень воды известен. Хотелось бы, что бы регулятор, в первую очередь, выравнивал расходы, а потом уже корректировал уровень. Таким образом мы бы практически исключили перерегулирование при хорошем быстродействии. Но при этом не вставал вопрос снятия характеристик на задвижку воды, т.к. мы заранее не знаем ее пропускной способности в каждом из положений.
Пока еще серьезным разбором этого вопроса не занимался, но на вскидку - простого решения в голову не приходит.
П.П.С. Только если удастся динамически изменять Максимум(100%минус<положение задвижки после выравнивания расходов>) и Минимум(0%минус<положение задвижки после выравнивания расходов>) выходного сигнала регулятора уровня, без изменения его скоростных характеристик.
Последний раз редактировалось Солнечный заяц; 15.12.2011 в 09:21.
Здравствуйте "Солнечный заяц"
Проблема у меня (с точки зрения математики) точно такая же как и у Вас. Правда пока работающего варианта решения не получается. Но решение точно скрывается где-то в дебрях многоконтурных системах управления. Вот и предложил предусмотреть в типовом ПИД-регуляторе еще один вход (в других регуляторах он называется начальное положение) и я сейчас пытаюсь с помощью этого входа построить многоконтурную систему управления.
P. S. Лично я против ограничения выходного сигнала как Вы предложили. Слишком тонкая и опасная настройка, а уж для паровых котлов .....
Автоматизация Диспетчеризация Сервис
e-mail: ads-kaluga@mail.ru
а двухкаскадное регулирование не пробовали
Ох хох...
Это какие то уже сложные блоки. Их надо обсуждать отдельно.
Я предлагаю сделать библиотеку простых блоков для использования в 80% случаев.
если это ко мне, то я отвечал надва каскада это два простых регулятора, стоящих последовательно и с той лишь разницей что уставку для второго каскада формирует первыйХотелось бы, что бы регулятор, в первую очередь, выравнивал расходы, а потом уже корректировал уровень.
2capzap
Вы предлагаете, чтобы регулятор расхода давал задание регулятору уровня, вместо оператора???