Показано с 1 по 10 из 10

Тема: помогите решить проблему с Pid

  1. #1

    Exclamation помогите решить проблему с Pid

    Здравствуйте.
    При работе регулятора PID из библиотеки util.lib возникла не понятная ситуация.

    Речь идет о регулировании скорости. Для вычисления скорости используется ФБ частотомер, предложенный у вас на форуме (http://www.owen.ru/forum/showthread.php?t=551&page=2) Он немного изменен - добавлено преобразование форматов WORD_TO_REAL на выходе и считает, не раз в секунду, а раз в полсекунды, а также нет выбора об/мин или об/сек - только об/мин. И полученное значение подается на вход ACTUAL PIDа. Задание должно осуществляться либо вручную ступенчатое воздействие, либо на вход должна задаваться диаграмма, которая работает по принципу прибавления/вычитания значений каждые 0,1 с. Диаграмма задается с ФБ - Avt.

    При задании вручную ступенчатого воздействия регулятор прекрасно отрабатывает воздейсвие, ФБ частотомера отлично работает. НО при попытке задать диаграмму значений, ФБ частотомер перестает нормально считать обороты и выдает намного меньшее значение скорости, как будто не успевает посчитать. В результате PID загоняет выход в максимум и регулирования не происходит.
    Помогите, пожалуйста, решить эту проблему!
    Если неполно описал процесс или принцип работы, то спрашивайте - отвечу подробнее. Прикладываю программу с функциональными блоками Avt и freq_metr, а так же основную программу.
    Вложения Вложения
    • Тип файла: rar HELP.rar (43.7 Кб, Просмотров: 40)
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

  2. #2

    По умолчанию

    укажите точно с какой частотой следуют импульсы на вход частотомера. он не сможет считать считать быстрее 500 гц. т.к. частота плк -1 кгц. некоторые западные авторы пытаются заменить теорему котельникова теоремой найквиста-шеннона, что является очередной провокацией амерканского импереиализма, и отметается нами с негодованием. но если посмотреть в теорему то все станет понятно (с фб частотомера)
    Последний раз редактировалось Малышев Олег; 05.12.2009 в 12:56.
    Часто задаваемые вопросы по кодесис
    1) Почему программа не работает - Следует выполнить "Онлайн ->Старт"
    2) Где скачать CoDeSys, таргеты, прошивки, библиотеки - http://www.owen.ru/catalog/codesys_v3/opisanie

  3. #3

    Exclamation помогите решить проблему с Pid

    Использую датчик ВБ3C.18М.65.TR200.2П.1.K. У него в характеристиках потолок 400 Гц.

    UDP: в том то и дело, что когда на вход подается уставка регулятора N_manual, тогда работает все достаточно приемлемо (регулирует и держит уровень, отрабатывает возмущения), но когда уставка берется из ФБ Avt (переменная N_Avt), то ФБ частотомер перестает считать нормально, как будто не успевает.

    Сегодня тестировал и получается, что если если значение N_avt подавать напрямую на выход без регулятора, то ФБ частотомера работает в общем-то как нужно, а если N_Avt брать с какого-либо ФБ, то частотомер перестает "успевать" считать. Не хватает опыта/знаний самому сделать вывод...
    Последний раз редактировалось Andrupel; 05.12.2009 в 16:55.
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

  4. #4

    По умолчанию

    1) возможно и не успевает. в последних прошивках и таргетах есть расширенный модуль статистика. там можно посмотреть и реальную загрузку процессора. если она превышает время цикла - цпу захлебывается и получается такая ерунда
    2) для оценки ситуации можно использовать инструмент трассировка... см. хелп кодесиса
    Часто задаваемые вопросы по кодесис
    1) Почему программа не работает - Следует выполнить "Онлайн ->Старт"
    2) Где скачать CoDeSys, таргеты, прошивки, библиотеки - http://www.owen.ru/catalog/codesys_v3/opisanie

  5. #5

    По умолчанию

    В ближайшие дни всё попробую. В частности попробую увеличить параметр MinCycleLength в зависимости от реальных замеров времени циклов.
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

  6. #6

    По умолчанию

    Что будет если значение MinCycleLength сделаю равным нулю? В домументации почему-то не освещено или не увидел. Только когда ставлю 0, тогда программа работает более-менее нормально.
    При 1 мс (по-умолчанию стояло у меня) замеренное значение времени цикла составило 900-1000*0,1 ms и программа работает плохо как описано выше.
    Увеличивал параметр до 50 мс. Программа считала все хуже и хуже-меньше данных обсчитывалось.
    Когда выставил 0 мс, тогда программа стала считать частоту и значение времени цикла стало 6000*0.1 ms со скачками до 20000*0.1 ms.
    В связи с этим еще вопрос. Сколько должно быть реальное значение времени цикла, например, для простенькой программы с одним регулятором?
    Последний раз редактировалось Andrupel; 08.12.2009 в 23:15.
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

  7. #7
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    При значении 0-контроллер работает без контроля мин времени цикла и новый цикл вызывается сразу по окончании предидущего.
    типовое время 1мс. В документации это описано.(PLC_Configuration_OWEN)
    Скорее всего у Вас контроллер не успевает обрабатывать данные от входов.
    Обычно для решения таких задач используют специализированные "быстрые "входы или счетные модули.
    На ПЛК 110 есть быстрые входы.

  8. #8

    По умолчанию

    контроллер уже стоит, там где и должен стоять. поменять его нет никакой возможности.
    почему он не справляется? ведь в документации же написано, что аппаратный счетчик до 1 кгц. у меня эта цифра меньше в 2,5 раза. контроллер должен успевать. или еще есть какие-то ограничения по сложности и объему программы?
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

  9. #9

    По умолчанию

    1) Уточните - какова загрузка ЦПУ - для этого есть модуль статистика.
    2) Вы используете программный счетчик - а аппаратный - модуль Counter16( или 32) в PLC_Configuration
    3) Уточните, что за контроллер используется - ПЛК 1хх, прошивка хххх, кодесис ххх
    Часто задаваемые вопросы по кодесис
    1) Почему программа не работает - Следует выполнить "Онлайн ->Старт"
    2) Где скачать CoDeSys, таргеты, прошивки, библиотеки - http://www.owen.ru/catalog/codesys_v3/opisanie

  10. #10

    По умолчанию

    1) Написал выше "Когда выставил 0 мс, тогда программа стала считать частоту и значение времени цикла стало 6000*0.1 ms со скачками до 20000*0.1 ms."
    2) Больше не буду путать.
    3) ПЛК 154-УМ, прошивка 2.05.7, кодесис 2.3.9.9bOct 2008
    Последний раз редактировалось Andrupel; 09.12.2009 в 10:43.
    Изучаю CoDeSiS и ПЛК154.
    JUST DO IT!!!
    P.S. I DO IT!!!

Ваши права

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