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

Алгоритм выхода на уставку с заданной скоростью

Обсуждение вопросов, не относящихся ни к одному из других подразделов

Автор темы
Good_winn
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 06 окт 2013, 19:12
Ф.И.О.: Молодцов Роман Константинович

Алгоритм выхода на уставку с заданной скоростью

Сообщение Good_winn » 06 окт 2013, 19:24

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

Аватара пользователя

san
преподаватель
преподаватель
Сообщения: 1400
Зарегистрирован: 01 сен 2008, 17:32
Ф.И.О.: Пупена Александр
Откуда: Киев, Украина
Поблагодарили: 1 раз
Контактная информация:

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение san » 06 окт 2013, 19:27

Это типичная задача програмного регулирования: программный задатчик формирует задание от времени на ПИ-регулятор. Как аппаратно должен быть реализован контур? Если ПЛК, то тут проблем возникунть не должно.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2212
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Михайло » 06 окт 2013, 19:40

Называется это задатчик интенсивности (ramp generator).


Автор темы
Good_winn
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 06 окт 2013, 19:12
Ф.И.О.: Молодцов Роман Константинович

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Good_winn » 06 окт 2013, 20:30

Большое спасибо за быстрый ответ. буду внедрять такое решение. Если не сложно поясните почему дифференциальная составляющая с этом случае не нужна? И ещё, нужно ли менять коэффициенты регулятора для задачи и поддержания температуры и ее роста с заданной скоростью.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2212
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Михайло » 06 окт 2013, 20:56

Регуляторы не обеспечивают заданные темпы роста величин, для этого применяются задатчики интенсивности. То есть в Вашей задаче нужен задатчик интенсивности с переменным темпом на входе, а далее уже дело обычного регулятора.

Вот, что творит ЗИ с прямоугольным сигналом на входе:

Изображение

Обратите внимание на тоненькую синенькую линию внизу. Представьте, что это задание температуры для контура регулирования температуры. А толстая красная линия вверху - это тоже задание температуры, при чем тут всего два уровня - 0 градусов и 80 градусов.

Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1078
Зарегистрирован: 18 янв 2009, 12:25
Ф.И.О.: Дмитрий
Благодарил (а): 2 раза
Поблагодарили: 22 раза

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение hell_boy » 06 окт 2013, 21:00

Good_winn писал(а):По техзаданию нагрев с комнатной температуры до 80 градусов разбит на три периода, в каждом периоде задана постоянная скорость нагрева.

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

Аватара пользователя

san
преподаватель
преподаватель
Сообщения: 1400
Зарегистрирован: 01 сен 2008, 17:32
Ф.И.О.: Пупена Александр
Откуда: Киев, Украина
Поблагодарили: 1 раз
Контактная информация:

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение san » 06 окт 2013, 21:10

Топикстартер ничего не говорил о темпах роста. Я чесно говоря не знаю что такое задатчик интенсивности, но рамп-генератор мне вроде-как понятен. Но графики вверху наверное взяты с какого-то аппаратного устройства?
Если нужна линейная ломаная в качестве задания, а инерционность роста задания в несколько раз больше инерционности объекта по каналу измерения, то все должно получиться с комбинации ПИ и программного задатчика. Д-составляющая там не нужна если нет быстрых возмущений.


Автор темы
Good_winn
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 06 окт 2013, 19:12
Ф.И.О.: Молодцов Роман Константинович

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Good_winn » 07 окт 2013, 09:36

Сегодня говорил с заказчиком, выяснил подробности автоматизируемого процесса.
Исполнительных механизмов будет два: клапан подачи горячей воды и клапан подачи захоложенной воды. Производство химическое, раствор в емкости может разогреваться сам и регулятор в каком-то диапазоне температур скорее должен сдерживать нагрев холодной водой чем нагревать.
В качестве параметров процесса даны именно скорости нагрева которые необходимо поддерживать внутри каждого температурного диапазона. (V1 ° в мин до T1°; V2 ° в мин с T1° до Т2° и т д)
Как я понимаю отрицательные значения выхода регулятора нужно продавать на клапан холодной воды положительные на клапан горячей воды.


Василий Иванович
авторитет
авторитет
Сообщения: 872
Зарегистрирован: 21 авг 2009, 13:25
Ф.И.О.: Василий Иванович
Благодарил (а): 1 раз
Поблагодарили: 3 раза

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Василий Иванович » 07 окт 2013, 10:31

Люди, да чего уж проще с этой рампой! Вот вам алгоритм, обвяжите и размножьте его и пользуйтесь. Поди не бином Ньютона.

Код: Выделить всё

IF ABS(IN-OUT) > MAXSTEP THEN
    IF IN > OUT THEN OUT := OUT + MAXSTEP;
    ELSE             OUT := OUT - MAXSTEP;
    END_IF;
ELSE                 OUT := IN;
END_IF;


Василий Иванович
авторитет
авторитет
Сообщения: 872
Зарегистрирован: 21 авг 2009, 13:25
Ф.И.О.: Василий Иванович
Благодарил (а): 1 раз
Поблагодарили: 3 раза

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Василий Иванович » 07 окт 2013, 10:47

Ну и применительно к температурным диапазонам:

Код: Выделить всё

IF    Temp < Temp1 THEN PIDsetpoint := RAMP( Setpoint, MaxStep1);
ELSIF Temp < Temp2 THEN PIDsetpoint := RAMP( Setpoint, MaxStep2);
ELSE                    PIDsetpoint := RAMP( Setpoint, MaxStep3);
END_IF;


Василий Иванович
авторитет
авторитет
Сообщения: 872
Зарегистрирован: 21 авг 2009, 13:25
Ф.И.О.: Василий Иванович
Благодарил (а): 1 раз
Поблагодарили: 3 раза

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Василий Иванович » 07 окт 2013, 10:53

На выход ПИДа повесить Split Range с примерно вот такой функцией:

Код: Выделить всё

IF IN < 50 THEN OUT1 := 2 *(50 - IN); OUT2 := 0;
ELSE            OUT1 := 0;            OUT2 := 2 * (IN - 50);
END_IF;


Автор темы
Good_winn
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 06 окт 2013, 19:12
Ф.И.О.: Молодцов Роман Константинович

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Good_winn » 07 окт 2013, 19:07

Василий Иванович писал(а):На выход ПИДа повесить Split Range с примерно вот такой функцией:

Код: Выделить всё

IF IN < 50 THEN OUT1 := 2 *(50 - IN); OUT2 := 0;
ELSE            OUT1 := 0;            OUT2 := 2 * (IN - 50);
END_IF;

Подскажите каким образом в данном случае следует подбирать коэффициенты ПИД, ведь они будут различны для клапанов горячей и холодной воды. По какому из них снимать задержку реакции и полосу пропорциональности?


Василий Иванович
авторитет
авторитет
Сообщения: 872
Зарегистрирован: 21 авг 2009, 13:25
Ф.И.О.: Василий Иванович
Благодарил (а): 1 раз
Поблагодарили: 3 раза

Re: Алгоритм выхода на уставку с заданной скоростью

Сообщение Василий Иванович » 07 окт 2013, 23:47

Не надо для них разных коэффициентов, один и тот же пойдет на ура. Split range - типовое решение для регулирования температуры.


Вернуться в «Общие вопросы»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей