Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Программное обеспечение
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

PID в WAGO_IO_PRO 32

 Ответить Ответить Страница  <1234 6>
Автор
Сообщение
_IP_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 29 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 293
Свойства публикации Свойства публикации   Ответить, цитируя автора - _IP_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: PID в WAGO_IO_PRO 32
    Опубликовано: 15 Ноябрь 2007 16:00

Похоже, тут именно не BOOL 0,1 (включено/выключено), а именно REAL от 0 до 1.

Пусть меняется выход ПИДа как удобно, например от 0 до 100.  После него можно поставить блок LIN_TRAFO и сделать от 0 до 1.

Igor Petrov
Наверх
waldius Смотреть выпадающим
Новичок
Новичок


Присоединился: 10 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 33
Свойства публикации Свойства публикации   Ответить, цитируя автора - waldius Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Ноябрь 2007 16:04
Первоначально опубликовано _IP_

Похоже, тут именно не BOOL 0,1 (включено/выключено), а именно REAL от 0 до 1.

Пусть меняется выход ПИДа как удобно, например от 0 до 100.  После него можно поставить блок LIN_TRAFO и сделать от 0 до 1.

А как сделать чтобы ПИД менялся от 0 до 100?

В библиотеке даны только такие входные и выходные параметры:

VAR_INPUT
 ACTUAL :REAL;  (* Actual value / Istwert *)
 DESIRED:REAL;  (* Desired Value / Sollwert *)
 KP:REAL;    (* Proportional const. / Proportionalitдtskoeff.  0<KP<1 *)
 TR:DWORD;   (* Reset Time / Nachstellzeit in msec *)
 TD:DWORD;   (* Derivative Time / Vorhaltzeit in msec *)
 RESET:BOOL;
END_VAR
VAR_OUTPUT
 OUT:REAL ;   (* Set value (absolute) / Stellwert (absolut) *)
END_VAR

Больше там настраивать вроде нечего...

Наверх
Dismay Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 01 Июнь 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 464
Свойства публикации Свойства публикации   Ответить, цитируя автора - Dismay Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 06:17

Первоначально опубликовано waldius

Я надеялся что на выходе получу значение от 0 до 1, а тут что-то непонятное для меня...

Как это согласуется с вашими ожиданиями, не пойму логики 0 и 1 и ШИМ как вы хотите подружить и как предполагали включать обогреватель, регулятор ПИ может менять его мощность но включать его он не должен, задача регулятора как раз состоит в том, что бы расcчитать мощность вашего нагревателя таким образом, что бы привести контролируемый параметр за кратчайшее время к заданному значению с минимальным перерегулированием.

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

 

Наверх
waldius Смотреть выпадающим
Новичок
Новичок


Присоединился: 10 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 33
Свойства публикации Свойства публикации   Ответить, цитируя автора - waldius Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 09:49
Первоначально опубликовано Dismay

Первоначально опубликовано waldius

Я надеялся что на выходе получу значение от 0 до 1, а тут что-то непонятное для меня...

Как это согласуется с вашими ожиданиями, не пойму логики 0 и 1 и ШИМ как вы хотите подружить и как предполагали включать обогреватель, регулятор ПИ может менять его мощность но включать его он не должен, задача регулятора как раз состоит в том, что бы расcчитать мощность вашего нагревателя таким образом, что бы привести контролируемый параметр за кратчайшее время к заданному значению с минимальным перерегулированием.

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

 

Понятно что ПИД-регулятор не участвует во включении нагревателя... Нагреватель включается если измеренная температура опустилась ниже уставки на один градус...

А насчет значения от 0 до 1 - это я предполагал что так буду вычислять ширину импульса ШИМ... Для мощности нагревателя... Если 1,0 то импульс полный, нагреватель работает на полную мощность, если 0,0 то нагреватель не греет вообще, если 0,3 то импульс ШИМ равен Полный импульс * 0,3... Т.е. не знаю как связать то что получается на выходе ПИД-регулятора с длительностью импульса ШИМ...

Кстати, я правильно понял что в этом ПИД-регуляторе входное значение ACTUAL - это текущая температура, а TARGET - это уставка?...

Наверх
_IP_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 29 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 293
Свойства публикации Свойства публикации   Ответить, цитируя автора - _IP_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 10:19
Первоначально опубликовано waldius

Кстати, я правильно понял что в этом ПИД-регуляторе входное значение ACTUAL - это текущая температура, а TARGET - это уставка?...

Загрузите русскую документацию  на CoDeSys

 

Наверх
waldius Смотреть выпадающим
Новичок
Новичок


Присоединился: 10 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 33
Свойства публикации Свойства публикации   Ответить, цитируя автора - waldius Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 10:35
Первоначально опубликовано _IP_

Первоначально опубликовано waldius

Кстати, я правильно понял что в этом ПИД-регуляторе входное значение ACTUAL - это текущая температура, а TARGET - это уставка?...

Загрузите русскую документацию  на CoDeSys

 

Есть уже такая

Там ничего полезного про этот FB не написано...

Первоначально опубликовано CodeSys

Функциональный блок  реализует ПИД закон регулирования:

где Y_OFFSET - стационарное значение, KP - коэффициент передачи, TN - постоянная интегрирования (ms), TV - постоянная дифференцирования (ms), e(t) сигнал ошибки (SET_POINT-ACTUAL).

Входы ACTUAL,  SET_POINT, KP, Y_OFFSET, Y_MIN Y_MAX типа  REAL.  Входы TN и TV типа DWORD, RESET и MANUAL типа BOOL.

Выходы Y - REAL, LIMITS_ACTVE и OVERFLOW типа BOOL.

Механизм ограничения выхода PID аналогичен PD регулятору.

Неправильная настройка регулятора может вызвать неограниченный рост интегральной составляющей. Для обнаружения такой ситуации предназначен выход OVERFLOW. При переполнении он принимает значение TRUE, одновременно останавливается работа регулятора. Для его включения необходимо использовать рестарт.

Первоначально опубликовано WAGO-IO-PRO 32

The PID controller function block:
ACTUAL (actual value) and DESIRED (desired or nominal value) as well as KP, the proportionality coefficient, are all input values of the type REAL. TN, the integral action time, and TV, the derivative action time, are delivered in msec by a DWORD. RESET is of the type BOOL and serves to reset the controller.
The output, the absolute control output (OUT), is again of the type REAL, and is calculated as follows:

OUT = ACTUAL + K ( + + TV )

The PID controller can be easily converted to a PI controller by setting TV=0.

Наверх
_IP_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 29 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 293
Свойства публикации Свойства публикации   Ответить, цитируя автора - _IP_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 11:02

Это цитата из старой документации, в мае было обновление. Описание блока несколько дополнено, но ест-но там не написано как вообще использовать ПИД.

Наверх
waldius Смотреть выпадающим
Новичок
Новичок


Присоединился: 10 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 33
Свойства публикации Свойства публикации   Ответить, цитируя автора - waldius Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 11:04
Первоначально опубликовано _IP_

Это цитата из старой документации, в мае было обновление. Описание блока несколько дополнено, но ест-но там не написано как вообще использовать ПИД.

В любом случае то что в CodeSys отличается от того что у меня в WAGO-IO-PRO 32... Библиотеки разные...

Наверх
Dismay Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 01 Июнь 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 464
Свойства публикации Свойства публикации   Ответить, цитируя автора - Dismay Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2007 11:48

[/QUOTE]

В любом случае то что в CodeSys отличается от того что у меня в WAGO-IO-PRO 32... Библиотеки разные...

[/QUOTE]

Вам из WAGO-IO-PRO 32 на самом деле необходим только один пакет Customer который содержит таргет и библиотеки WAGO для ваших ПЛК а сам CoDeSys лучше обновлять на сайте 3S я юзаю customer_2.3.7.2.zip от WAGO из под CoDeSys 2.3.8.5 и считаю, что это самый правильный вариант то есть лучше оперировать последними версиями если нет необходимости в обратном

Наверх
waldius Смотреть выпадающим
Новичок
Новичок


Присоединился: 10 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 33
Свойства публикации Свойства публикации   Ответить, цитируя автора - waldius Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 23 Ноябрь 2007 16:09

Up!

Неужели никто не работает с ПИД- или ПИ-регуляторами?...

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

Хелп!

Наверх
 Ответить Ответить Страница  <1234 6>

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz