PDA

Просмотр полной версии : Помогите разобраться по пид регулятору



brth
22.05.2018, 21:14
Доброго времени суток. Нужно решить задачу на тему: по изменению мощности подогрева жидкости при определенной температуре с помощью пид регулятора в программе Owen Logic. Все что находил на форуме по пид регуляторам особо не похоже на мой (больше входных переменных), дайте целебный пинок и путь куда стоит рыть информацию. Спасибо.
37374

ferret_maybe
22.05.2018, 21:40
Е - ошибка (рассогласование) между уставкой и измеренной величиной? В вашем регуляторе, где вводятся коэффициенты П, Д, И?

brth
22.05.2018, 21:57
Е - ошибка (рассогласование) между уставкой и измеренной величиной? В вашем регуляторе, где вводятся коэффициенты П, Д, И?
Е - это Разрешение на работу блока. В выключенном состоянии на выход блока подается значение, заданное в свойстве «выходная мощность». А коэффициенты вводятся в свойствах регулятора.

brth
22.05.2018, 22:00
Достаточно ли будет одного регулятора для выполнения этой функции? Например как-то так или это ерунда?
37375

ferret_maybe
22.05.2018, 22:02
Выложите исходник посмотреть, сделают оценку. Так по фото ванговать можно долго.

brth
24.05.2018, 00:24
В моем понимании это выглядит так:
I8 - кнопка вкл/выкл.
Вход Al1 - значение текущей мощности.
Вход Al2 - значение требуемой мощности.
Выход AO1 - на печку.

Это свойства пид регулятора:
37412
Каким образом расставить ПИД коэффициенты в моем случае и где вообще почитать про них (в помощи только про время разговор)?
Вот мой скромный файл:
37413

brth
24.05.2018, 00:32
Примеры:
1. Вход I8 включен - мощность подогрева 60%
37415
2. Текущая мощность 50%, требуемая 80% - подогрев включается с какого-то значения и поднимается до 100%
37416
3. Текущая мощность 85%, требуемая 80% - мощность подогрева снижается
37417

Судя по всему скорость и регулируется этими коэффициентами П,Д,И
Я хоть правильно соображаю или совсем лыжи не едут? ;)

Сергей0308
24.05.2018, 00:40
В моем понимании это выглядит так:
I8 - кнопка вкл/выкл.
Вход Al1 - значение текущей мощности.
Вход Al2 - значение требуемой мощности.
Выход AO1 - на печку.

Это свойства пид регулятора:
37412
Каким образом расставить ПИД коэффициенты в моем случае и где вообще почитать про них (в помощи только про время разговор)?
Вот мой скромный файл:
37413

Вы хотя бы для начала справку посмотрите в ОЛ, установите границы измерения для аналоговых входов и на аналоговый выход сигнал должен идти диапазона 0 - 1, а не 0 - 100:

37418

brth
24.05.2018, 01:27
Вы хотя бы для начала справку посмотрите в ОЛ, установите границы измерения для аналоговых входов и на аналоговый выход сигнал должен идти диапазона 0 - 1, а не 0 - 100:
37418
Значит между аналоговым входом и пид регулятором должно быть ещё что-то?

Сергей0308
24.05.2018, 01:36
Значит между аналоговым входом и пид регулятором должно быть ещё что-то?

С такими настройками аналоговых входов, как у Вас, что не ставь, ничего работать не будет:

37419

Snoopy123
24.05.2018, 08:16
настройте границы аналоговых входов. Поделите выход пид регулятора на 100, для получения результата для аналогового выхода

Василий Кашуба
24.05.2018, 15:55
Примеры:
1. Вход I8 включен - мощность подогрева 60%
37415
2. Текущая мощность 50%, требуемая 80% - подогрев включается с какого-то значения и поднимается до 100%
37416
3. Текущая мощность 85%, требуемая 80% - мощность подогрева снижается
37417

Судя по всему скорость и регулируется этими коэффициентами П,Д,И
Я хоть правильно соображаю или совсем лыжи не едут? ;)
На вход Pv подаётся измеренный параметр (температура, давление и т.д.), на вход Sp уставка/задание которое нужно получить входе регулирования, а Pwr - это величина воздействия на исполнительный механизм, который регулирует необходимый параметр.

brth
24.05.2018, 22:58
В моем понимании это выглядит так:
I8 - кнопка вкл/выкл.
Вход Al1 - значение текущей мощности.
Вход Al2 - значение требуемой мощности.
Выход AO1 - на печку.


На вход Pv подаётся измеренный параметр (температура, давление и т.д.), на вход Sp уставка/задание которое нужно получить входе регулирования, а Pwr - это величина воздействия на исполнительный механизм, который регулирует необходимый параметр.
Ну примерно тоже самое

настройте границы аналоговых входов. Поделите выход пид регулятора на 100, для получения результата для аналогового выхода
Границы настраивать в пределах минимальной (10) и максимальной мощности (90)?
37434
Делить на 100 так? Добавить блок умножения на число 0.01 (K=0.01)
37435

Василий Кашуба
25.05.2018, 07:21
Ну примерно тоже самое

Границы настраивать в пределах минимальной (10) и максимальной мощности (90)?
37434
Делить на 100 так? Добавить блок умножения на число 0.01 (K=0.01)
37435
Нет, не тоже самое, у вас получается, что вы регулируете мощность чего то, только для достижения этой мощности. А для чего вам нужна эта величина мощности? Какая у вас цель? В конечном итоге вам, как я понял, нужно что то нагревать, поэтому вам нужно измерять температуру, а не мощность и не важно какой мощностью вы будете поддерживать её стабильность.

brth
25.05.2018, 07:53
Нет, не тоже самое, у вас получается, что вы регулируете мощность чего то, только для достижения этой мощности. А для чего вам нужна эта величина мощности? Какая у вас цель? В конечном итоге вам, как я понял, нужно что то нагревать, поэтому вам нужно измерять температуру, а не мощность и не важно какой мощностью вы будете поддерживать её стабильность.

У меня есть 2 бака: в первый бак извне подаётся жидкость температурой 10-90 градусов и уже оттуда она перекачивается во второй бак, где внутри стоит нагреватель (с охладителем), чтобы на выходе получить температуру 70-80 градусов. Получается мне нужно управлять мощностью нагревателя, чтобы он вовремя отключался или включался на подогрев в зависимости от температуры жидкости. Ещё важно чтобы при достижении предельно-возможной температуры нагреватель сам уменьшал мощность, насколько понял, то с помощью пид регулятора такое возможно.

Snoopy123
25.05.2018, 08:13
У меня есть 2 бака: в первый бак извне подаётся жидкость температурой 10-90 градусов и уже оттуда она перекачивается во второй бак, где внутри стоит нагреватель (с охладителем), чтобы на выходе получить температуру 70-80 градусов. Получается мне нужно управлять мощностью нагревателя, чтобы он вовремя отключался или включался на подогрев в зависимости от температуры жидкости. Ещё важно чтобы при достижении предельно-возможной температуры нагреватель сам уменьшал мощность, насколько понял, то с помощью пид регулятора такое возможно.

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

Балалай
25.05.2018, 14:52
Нагреватель и охладитель это два разных устройства с разными типами управления или это одно устройство?
Нагреватель и охладитель какие сигналы воспринимают? (0-10, 4-20 или просто вкл/выкл)
Температуру каким датчиком измеряете? (ТС, 4-20 или что-то иное)

brth
25.05.2018, 20:03
Нагреватель и охладитель это два разных устройства с разными типами управления или это одно устройство?
Нагреватель и охладитель какие сигналы воспринимают? (0-10, 4-20 или просто вкл/выкл)
Температуру каким датчиком измеряете? (ТС, 4-20 или что-то иное)
Нагреватель и охладитель будем считать что одно устройство. А по поводу сигналов и датчиков не известно, все пока в процессе прикидки и моделирования.

brth
25.05.2018, 20:06
конечно возможно. это будет самый правильный вариант
Только вот как реализовать? Хотелось бы рабочий пример с пид регулятором подглядеть у кого :rolleyes:

capzap
26.05.2018, 07:04
Когда бросаются фразами
Нагреватель и охладитель будем считать что одно устройствоможно сделать вывод, что создается некий уникальный, инновационный проект, напрашивается вопрос зачем браться за такое изделие если нет теории и практики? В "дедовском" способе чтобы что то нагреть/охладить в резервуарах используют "рубашку" в которой протекают сервисные среды и задача состоит только в том чтоб вовремя закрыть подачу с учетом инерции

Snoopy123
26.05.2018, 11:19
Только вот как реализовать? Хотелось бы рабочий пример с пид регулятором подглядеть у кого :rolleyes:

У вас нагреватель какой? У него есть какой то вход? Аналоговый например?

Балалай
27.05.2018, 18:18
Пример использования ПИД-а в ОЛ смотреть бессмысленно, он будет просто выдавать цифру в заданных пределах. Вся суть этого ПИД-а в том, какие значения на вход к нему подключить и как использовать выходную цифру. Для конвертации значений с аналоговых входов есть скрипты в библиотеке(вроде бы, я сам пользуюсь самописными). Если управление двумя устройствами, то наверно лучше использовать два ПИД-а, для нагревателя и для охладителя.
Если ваши устройства понимают аналоговые сигналы, то можно выходы ПИД-а (почти) напрямую заводить на аналоговые выходы, а если дискретное управление, то придется делать что-то вроде ШИМ-а, только наверно релюшки тебя материть будут. Так что лучше было бы побольше данных дать для анализа ситуации.

Mr. King
02.06.2018, 06:09
Всем здравия желаю! У кого есть практический опыт подбора параметров ПИД-регулятора из арсенала Owen Logic? Задача - управление частотными преобразователями насосов. Есть насосы Wilo с ЧП и ПР200, контролируемый параметр - давление которое сравнивается с уставкой. Ранее для этой связки путем подбора только лишь пропорционального коэффициента (Кп=1) было достигнуто состояние относительно стабильной работы. В данное время ПР200 управляет более мощными насосами, которые, по достижению заданного давления начинают работать рывками, т. е. о плавности работы речи нет, на 100 процентах до уставки, а потом рывки. Объект - жилой дом, все эксперементы и наблюдения за поведением системы сильно ограничены и чреваты последствиями, оперирования только пропорциональным коэффициентом явно не достаточно, да и не правильно, с точки зрения ПИД-регулирования. В связи с этим прошу помощи опытных товарищей, возможно уже кто-то успешно реализовал подобную систему управления. Интересуют только практические советы по подбору параметров и и примеры значений, при которых управление было приемлемым.

Snoopy123
02.06.2018, 13:03
Всем здравия желаю! У кого есть практический опыт подбора параметров ПИД-регулятора из арсенала Owen Logic? Задача - управление частотными преобразователями насосов. Есть насосы Wilo с ЧП и ПР200, контролируемый параметр - давление которое сравнивается с уставкой. Ранее для этой связки путем подбора только лишь пропорционального коэффициента (Кп=1) было достигнуто состояние относительно стабильной работы. В данное время ПР200 управляет более мощными насосами, которые, по достижению заданного давления начинают работать рывками, т. е. о плавности работы речи нет, на 100 процентах до уставки, а потом рывки. Объект - жилой дом, все эксперементы и наблюдения за поведением системы сильно ограничены и чреваты последствиями, оперирования только пропорциональным коэффициентом явно не достаточно, да и не правильно, с точки зрения ПИД-регулирования. В связи с этим прошу помощи опытных товарищей, возможно уже кто-то успешно реализовал подобную систему управления. Интересуют только практические советы по подбору параметров и и примеры значений, при которых управление было приемлемым.

На днях занимались настройкой пид-регулятора. П=4с и=1 д=1, и фильтр аналогового входа поставили 1с. Система работает довольно таки стабильно

Mr. King
02.06.2018, 13:54
Вот, спасибо, учтем и обязательно опробуем, как вариант, а заодно и автонастройку самого PID - регулятора применим.

Snoopy123
02.06.2018, 14:44
Вот, спасибо, учтем и обязательно опробуем, как вариант, а заодно и автонастройку самого PID - регулятора применим.
По моему опыту, самая лучшая автонастройка это ручная)

Dimos
07.06.2018, 14:50
Помогите.
Здравствуйте всем.
Не работает PID. сделал все как в справке. Ввожу коэффициенты вручную и начинаю изменять текущее значение и на выходе 0. если использую АНР то подберет коэффициенты, выставит какоето значение на выходе и его не меняет. если текущее значение параметра и падает.

Ревака Юрий
07.06.2018, 15:00
Помогите.
Здравствуйте всем.
Не работает PID. сделал все как в справке. Ввожу коэффициенты вручную и начинаю изменять текущее значение и на выходе 0. если использую АНР то подберет коэффициенты, выставит какоето значение на выходе и его не меняет. если текущее значение параметра и падает.

Добрый день, а EN-включен? после автонастройки необходимо перезапустить ПИД. Прикрепите что в проекте.

Dimos
07.06.2018, 16:05
37578
не знаю вставилось ли

Dimos
07.06.2018, 16:15
что я делаю не так?
1 Запускаю ПИД
2 Запускаю АНР
3 прогоняю туда сюда пока не появятся коэф.
дальше КАК?

Ревака Юрий
07.06.2018, 16:29
что я делаю не так?
1 Запускаю ПИД
2 Запускаю АНР
3 прогоняю туда сюда пока не появятся коэф.
дальше КАК?

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

Ревака Юрий
07.06.2018, 16:31
Переписываете коэф. их вносите в ПИД либо с экрана либо в свойства самого ПИД, если с экрана, то переменные должны быть энергонезависимые, дальше работаете по алгоритму.

А зачем у Вас там все через сетевые переменные завязано?

Ревака Юрий
07.06.2018, 16:34
А зачем у Вас там все через сетевые переменные завязано?
Вот ссылка на рабочий пример http://www.owen.ru/forum/showthread.php?t=27568&page=2&p=261159&viewfull=1#post261159

Dimos
08.06.2018, 09:29
Вот ссылка на рабочий пример http://www.owen.ru/forum/showthread.php?t=27568&page=2&p=261159&viewfull=1#post261159

используется сенсорная панель


выскакивает ошибка. Диапазон адресов исчерпан. а какой он?

Dimos
08.06.2018, 09:46
Заработал!!!!!!
Спасибо

gecha
10.12.2019, 22:13
В АНР ПИД регулятора счетчик какую функцию выполняет?

Godlike_S
11.12.2019, 01:14
В АНР ПИД регулятора счетчик какую функцию выполняет?

Эмуляция изменяемой величины.

gecha
12.12.2019, 23:40
В макросе воткнул счетчик, включаю эмуляцию, а он не работает. Что может быть? Вся схемка работает, а на новых элементах нет никаких сигналов

dan75
13.12.2019, 07:45
В макросе воткнул счетчик, включаю эмуляцию, а он не работает. Что может быть? Вся схемка работает, а на новых элементах нет никаких сигналов

Возможно, выходы новых элементов никуда не подключены.

gecha
13.12.2019, 11:42
Вход подключаю к выходу BLINK, к выходу переменную. В общем, какую конструкцию не собираю - новые элементы не участвуют в программе

petera
13.12.2019, 12:24
Вход подключаю к выходу BLINK, к выходу переменную. В общем, какую конструкцию не собираю - новые элементы не участвуют в программе

Если к выходу подключили переменную, которая больше нигде не используется, то - "грош цена такой переменной", т.е. эффекта от ее использования нет.
Нужно такой переменой задать свойство - энергонезависимая!

46170

gecha
13.12.2019, 12:49
dan75, спасибо. Переменную подключил к выходу счетчика, но сама переменная не подключена к выходу макроса.

gecha
13.12.2019, 13:01
Всем спасибо. Еще вопрос по практическому использованию ПИД регуляторов, какой из представленных в макросах удобней в практическом использовании? Мне надо для регулировки температуры подачи в теплоузле в зависимости от температуры улицы. Готовый вариант типа ТРМ232 не хочу.