реклама на сайте
подробности

 
 
> ПИД регулирование, все что с ним связано
Akakiy
сообщение Nov 18 2004, 16:05
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 15-11-04
Пользователь №: 1 137



Может кто нибудь видел сишные исходники ПИД регулятора. Хотчется глянуть как народ решает эту задачку.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
pschl
сообщение Apr 27 2005, 16:57
Сообщение #2





Группа: Новичок
Сообщений: 9
Регистрация: 26-04-05
Пользователь №: 4 522



Прежде всего нужно начать с того, каков объект и его передаточная функция. Тип регулятора и инженерные методы его синтеза выбираются исходя из модели объекта. Да, классический случай прост, но, например для температурных процессов можно добавить форсирование, так как они медленные... и.т.д А задача программирования достаточно проста. Выбрать дискретный регулятор(модель) и вперед. Есть простой способ получения С кода регулятора. Берется MATLAB с Control System ToolBox, синтезируется и моделируется в нем система управления, а далее можно получить C- код регулятора, там даже некое API есть и библиотеки нужные, как это сделать, написано в документации.
Go to the top of the page
 
+Quote Post
Fast
сообщение Apr 28 2005, 15:03
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



Цитата(pschl @ Apr 27 2005, 19:57)
Прежде всего нужно начать с того, каков объект и его передаточная функция. Тип регулятора и инженерные методы его синтеза выбираются исходя из модели объекта.

Вот такой обобщенный вопрос:
А если не знаем объект и его передаточную функцию - и все это черный ящик. И модель объекта построить сложно, чтоб адекватно все свойства отражала.
Есть только входные воздействия и выходные отклики (и мы знаем какой он должен быть с вероятностью < 1). Что делать ??
То есть, как строить систему с обучением в общем я знаю, но как обучать, чтобы добиться лучшего приближения и макс. быстрой стабилизации(захвата) - очень хочу знать.

Что значит "форсирование"
Цитата(pschl @ Apr 27 2005, 19:57)
..можно добавить форсирование, так как они медленные...
Go to the top of the page
 
+Quote Post
yuriyc
сообщение May 5 2005, 04:34
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-04-05
Пользователь №: 4 557



Была аналогичная проблема. Достаточно долгий выход на режим из за перерегулирования и достатачно длительного затем успокоения системы. Причем требовалось убрать перерегулирование температуры совсем. Задача была в поддержании температур в диапазоне от 30 до 400 градусов с точностью не менее 0.2 градусов. выход на режим осуществляется с со скоростью от 0.5 до 100 грд/мин.
Перерегулирование происходит по двум причинам
1. влияние интегральной, накопившейся за время выхода на режим.
2. из за тепловой инерции системы.
Решилось следующим образом: Был взят класический ПИД закон. при выходе на заданную температуру интегральная составляющая не участвует. т.к. ее влияние важно только на этапе поддержания.
Затем империческим путем определена тепловая инерция системы. т.е. Перелет без участия интегральной. Таким образом получили формулу расчета, дельты когда при выходе на режим регулирование надо прекращать.
Тзаданная = Тзаданная - дельта.
После прекращения регулирования ждем падения скорости прироста температуры практически до нуля. и начинаем регулирование.
Чтобы не было провала в регулировании из за отсутствия интегральной ее надо начинать накапливать с температуры зависящей от скорости выхода и заданной температуры. (формулу получили также империческим путем)

Кстати. Можно еще не ждать перелета, а принудительно понижать скорость на конечном этапе.
Таким образом время выхода на режим уменьшается в разы
Go to the top of the page
 
+Quote Post
yuriyc
сообщение May 5 2005, 06:07
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-04-05
Пользователь №: 4 557



Кстати ПИД регудятор можно усовершенствовать. Добавив к нему постоянную составляющую, зависящую от заданного значения. Мы ведь знаем какое воздействие надо оказывать на систему в состоянии поддержания. Возьмем это воздействие вычтем где-то 5-10%. и добавим к резульату ПИД расчета.
Тем самым мы уменьшим время выхода на режим поддержания. т.к. интегральную составляющую надо копить меньше
Go to the top of the page
 
+Quote Post
-Tумблер-
сообщение May 6 2005, 11:40
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 146
Регистрация: 4-11-04
Из: Московская область
Пользователь №: 1 040



Цитата
..при выходе на заданную температуру интегральная составляющая не участвует. т.к. ее влияние важно только на этапе поддержания. ..


Цитата(yuriyc @ May 5 2005, 09:07)
Кстати ПИД регудятор можно усовершенствовать. Добавив к нему постоянную составляющую, зависящую от заданного значения. 


Удивительно, как иногда разные разработчики независимо
друг от друга приходят к одним и тем же выводам. biggrin.gif
Что удивительно приятно. blush.gif

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


--------------------

- ЗАМЕНЯТЬ ДЕТАЛИ НА ХОДУ ВОСПРЕЩАЕТСЯ !!! -
Go to the top of the page
 
+Quote Post
yuriyc
сообщение May 6 2005, 17:23
Сообщение #7


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-04-05
Пользователь №: 4 557



Цитата(-Tумблер- @ May 6 2005, 14:40)
Могу лишь добавить, что иногда может быть удобно
определить массив "постоянных составляющих" для разных температур.
Так сказать, "равновесную кривую".
А значения между этими точками считать посредством
кусочно-линейной апроксимации.
*


Полностью согласен. При не линейности характеристик это очень даже поможет smile.gif Скорее это будет даже более правильным решением
Go to the top of the page
 
+Quote Post
khach
сообщение May 6 2005, 19:46
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



При ПИД регулировке нагревателей (и охладителей) столкнулся с ситуацией, когда постоянная времени "вверх" сильно отличаеться от постоянной времени "вниз". Кто нибудь сталкивался с регуляторами с двумя P (одна-"вверх", другая -"вниз")? И что говорит академическая теория устойчивости о таких системах?
Go to the top of the page
 
+Quote Post
yuriyc
сообщение May 11 2005, 06:34
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 27
Регистрация: 28-04-05
Пользователь №: 4 557



Цитата(khach @ May 6 2005, 22:46)
При ПИД регулировке нагревателей (и охладителей) столкнулся с ситуацией, когда постоянная времени "вверх" сильно отличаеться от постоянной времени "вниз". Кто нибудь сталкивался с регуляторами с двумя P (одна-"вверх", другая -"вниз")? И что говорит академическая теория устойчивости о таких системах?
*

Ну на счет академическай теории устойчивости о таких системах не скажу. Не вкурсе. Но мне кажется, что конечная устойчивость будет связана с точностью управляющего воздействия. Так в систевах нагрева ее можно довести до сотых градуса используя электронагреватели. А вот при охлаждении уже нет такого результата. Так для крио установок на жидном азоте, заявленная точность крана впрыска +-5грд/сельсия. Охладить можно до -400грд. Тут уже вопрос в реализации системы и общем диапазоне рабочих температур.
Точность можно повысить, я думаю, за счет константы холода и регулированным подогревом.
Что касается постоянной времени, то если нагрев принудительный, то охлаждение наверняка естественное ну или обдув воздухом. Отсюда и разница. Эфективность то нагрева выше.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Akakiy   ПИД регулирование   Nov 18 2004, 16:05
- - -Tумблер-   Цитата(Akakiy @ Nov 18 2004, 07:05 PM)Хотчетс...   Nov 22 2004, 13:27
- - Axel   Есть классная книга - "Искусство программиров...   Nov 23 2004, 15:44
|- - gek   Цитата(Axel @ Nov 23 2004, 18:44)Есть классна...   Jan 13 2005, 17:35
- - veter   почему все стремяться к таким сложностям? есть же ...   Feb 3 2005, 17:21
|- - Артемка   Цитата(veter @ Feb 3 2005, 23:21)почему все с...   Feb 4 2005, 11:35
- - veter   решали задачу управления процессом аустенизации па...   Feb 4 2005, 16:11
|- - gek   Мда... Нужно было лучше Теорию Автоматического Упр...   Feb 7 2005, 08:37
|- - -Tумблер-   Цитата(veter @ Feb 4 2005, 19:11)сначала вдар...   Feb 7 2005, 12:38
- - veter   ЦитатаЗдесь Т - время квантования, Кр - пропорцион...   Feb 7 2005, 13:33
|- - gek   Цитата(veter @ Feb 7 2005, 16:33)ЦитатаЗдесь ...   Feb 9 2005, 03:55
|- - -Tумблер-   Цитата(veter @ Feb 7 2005, 16:33)а как выбира...   Feb 10 2005, 12:09
|- - sergag   [quote=-Tумблер-,Feb 10 2005, 15:09] [quote=veter,...   Mar 14 2005, 09:39
|- - khach   Приблудилось из Сети. Код/*  .  posit...   Mar 14 2005, 15:14
- - sergag   Поможет или нет - не знаю, но посморите форум http...   Mar 17 2005, 11:25
- - ucramola   Цитата(Akakiy @ Nov 18 2004, 20:05)Может кто ...   Mar 20 2005, 23:05
|- - Fast   Эмпирически я получил (и использую для ФАПЧ КАМ-де...   Apr 5 2005, 05:00
- - max123   Модель ПИ регулятора. Управление осуществляется п...   Apr 5 2005, 04:25
|- - -Tумблер-   Цитата(khach @ May 6 2005, 22:46)Кто нибудь с...   May 11 2005, 09:47
- - ViDo   В продолжение темы вопрос. Нужно регулировать темп...   Jun 28 2005, 14:48


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 21:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.0145 секунд с 7
ELECTRONIX ©2004-2016