Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 15 из 15

Тема: Пара вопросов по программированию

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для porada
    Регистрация
    18.10.2012
    Адрес
    Москва
    Сообщений
    6

    По умолчанию

    >> существует ли возможность однократного исполнения какого-либо функционального блока?

    Конечно, существует. Оформляется по разному в зависимости от языка:

    ST:
    R_TRIG(CLK:=%IX4,0);
    IF R_TRIG.Q THEN
    myPID(***:=***, ***:=***, ... );
    END_IF

    CFC:
    щелчок правой мышкой на FB, выбрать "EN/ENO" из меню

    LD:
    щелчок правой мышкой на цепи, выбрать "Элемент с EN" из меню, заменить имя FB на myPID

    IL:
    CAL R_TRIG1 (CLK:=%IX4.0)
    LD R_TRIG1.Q
    CALC myPID(***:=***, ***:=***, ... )

    >> штатный функциональный блок PID не выставляет флаг "Завершена автонастройка",

    о каком FB PID идет речь? Т.к. у "штатного" FB PID (Util.lib: made in 3S) никаких автонастроек нет.
    Кстати эта Util.lib не запаролена, можно открыть ее в Кодесисе 2.3 и обозреть все присутствующие грабли в ее внутренностях. В Кодесисе 3.5 к сожалению это уже Util.compiled-library-ge33 и фиг че увидишь, но судя по сохранившемуся интерфейсу, на 99% можно полагать, что там все по прежнему.

    IMHO, ПИД-регулятор нужен только для улучшения динамических параметров ПИ-регулятора, его матмодель предназначена для оперирования в диапазоне ± бесконечность на входе и ± бесконечность на выходе. В реальном мире ПИД-регулятор никогда не имеет бесконечных диапазонов на входе и выходе, плюс всегда имеем дискретность \ квантование измерений его вх.\вых., что приводит к тому, что без "костылей", как-то компенсирующих эти несоответствия от него будет мало пользы.

    Т.е. если Вы не собираетесь улучшать динамические параметры ПИ-регулятора, то может и не стоит разбираться со всеми нюансами конкретной реализации PID? К сожалению в поставке Кодесис нет отдельного ПИ-регулятора, но он есть в Oscat.de библиотеках в исходниках.

  2. #2
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,254

    По умолчанию

    Цитата Сообщение от porada Посмотреть сообщение
    >> существует ли возможность однократного исполнения какого-либо функционального блока?

    Конечно, существует. Оформляется по разному в зависимости от языка:

    ST:
    R_TRIG(CLK:=%IX4,0);
    IF R_TRIG.Q THEN
    myPID(***:=***, ***:=***, ... );
    END_IF

    CFC:
    щелчок правой мышкой на FB, выбрать "EN/ENO" из меню

    LD:
    щелчок правой мышкой на цепи, выбрать "Элемент с EN" из меню, заменить имя FB на myPID

    IL:
    CAL R_TRIG1 (CLK:=%IX4.0)
    LD R_TRIG1.Q
    CALC myPID(***:=***, ***:=***, ... )

    >> штатный функциональный блок PID не выставляет флаг "Завершена автонастройка",

    о каком FB PID идет речь? Т.к. у "штатного" FB PID (Util.lib: made in 3S) никаких автонастроек нет.
    Кстати эта Util.lib не запаролена, можно открыть ее в Кодесисе 2.3 и обозреть все присутствующие грабли в ее внутренностях. В Кодесисе 3.5 к сожалению это уже Util.compiled-library-ge33 и фиг че увидишь, но судя по сохранившемуся интерфейсу, на 99% можно полагать, что там все по прежнему.

    IMHO, ПИД-регулятор нужен только для улучшения динамических параметров ПИ-регулятора, его матмодель предназначена для оперирования в диапазоне ± бесконечность на входе и ± бесконечность на выходе. В реальном мире ПИД-регулятор никогда не имеет бесконечных диапазонов на входе и выходе, плюс всегда имеем дискретность \ квантование измерений его вх.\вых., что приводит к тому, что без "костылей", как-то компенсирующих эти несоответствия от него будет мало пользы.

    Т.е. если Вы не собираетесь улучшать динамические параметры ПИ-регулятора, то может и не стоит разбираться со всеми нюансами конкретной реализации PID? К сожалению в поставке Кодесис нет отдельного ПИ-регулятора, но он есть в Oscat.de библиотеках в исходниках.
    круто, теперь тоже самое только для среды ОвенЛоджик можете "нарыть" инфу
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #3

    По умолчанию

    Добрый день! Это не курсовой проект, т.к. моя учеба в закончилась лейтенантскими погонами почти 25 лет назад. Мне тоже несколько не нравится затея с зажиманием выходной мощности регулятора, т.к. у него может накопиться избыточная ошибка, и при снятии ограничения он "выстрелит" большим перерегулированием, а затем, как Вы правильно говорите, может пойти колебательный процесс. Так что будем беседовать с заказчиком. Но, кроме всего прочего, есть интерес к этому пресловутому ФБ PID, не связанный с вышеописанной задачей. В частности, сейчас я с ним экспериментирую на столе в качестве обычного нагревателя (грею эмулятор печи ЭП10). И, например, АНР работает не корректно, как мне кажется. Вот и хочется услышать мнение других коллег.

  4. #4
    Пользователь Аватар для maximov2009
    Регистрация
    11.09.2012
    Адрес
    Барнаул Алтайский край
    Сообщений
    2,458

    По умолчанию

    К сожалению пока не имею Пр200. Поэтому ПОКА не участвую особо в обсуждении этого изделия. 200 это расширенная версия ПР114, с которой работаю и сейчас. В своё время использовал в проекте на 114 макрос ПИД, которым поделились коллеги с форума. Он и сейчас есть. А с тем ПИД, что включен сейчас в библиотеку для 200, пока не знаком. Но я так думаю, что ПИД он и в Африке ПИД. Про автонастройку ПИД я поднимал вопрос наверное больше года назад. Если он сейчас существует - очень хорошо. Но я обычно на объекте применяю автонастройку (если есть) а потом пробую чуть чуть корректировать. Эксперименты на столе, вряд ли дадут приемлемую картину. надо пробовать на живом. Автонастройка удачно получается только в случае процесса с неизменными входными данными. Например Вам нужно поддерживать постоянную температуру болванки постоянной массы. Нет проблем. А Вот если Вы попытаетесь сделать автонастройку Вашей системы, с учётом обрезания мощности и подключения непонятно какой дополнительной нагревательной системы. НИКОГДА толком не получится. Как говорится, на автонастройку надейся, да сам не плошай.
    С уважением.
    Лучшее - враг хорошего "Le mieux est I\'ennemi du bien" (вроде как Вольтеровское)

  5. #5

    По умолчанию

    Уважаемый porada, Вы конечно правы, но в CoDeSys у меня имеется свой немалый опыт. Однако в данной теме речь идет об ОвенЛоджик, а это несколько другая система, весьма отличающаяся от приведённых Вами примеров

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Пара вопросов по ТТР
    от Pleonix в разделе Твердотельное реле
    Ответов: 4
    Последнее сообщение: 10.12.2014, 23:06
  2. Пара вопросов про ТТР
    от spinogryz57 в разделе Твердотельное реле
    Ответов: 5
    Последнее сообщение: 29.11.2013, 05:29
  3. Пара вопросов
    от vakim в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 28.07.2011, 09:32
  4. Пара вопросов
    от Anglohel в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 27.08.2009, 13:53
  5. Пара вопросов по ПЛК-100
    от asup_svk в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 17.08.2009, 15:54

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •