Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Pid из UTIL.LIB проблемы

  1. #1

    По умолчанию Pid из UTIL.LIB проблемы

    Проверяю работу Pid из библиотеки UTIL.LIB.
    Проблемы с коэфициентом усиления.
    GoDeSYS ver 2.3.9.9.
    После загрузки программы делаю сброс контроллера, ввожу переменные в среде визуализации, старт контроллера. Происходит нормальный расчет формулы. Изменяю коэфициентом усиления. Программа новое значение не воспринемает, расчет идет со старым коэфициентом усиления. Делаю повторно сброс и пуск. Расчет один раз делается верно.
    Также не уверен в правельности работы интегральной части.
    Прощу поделится мнениями об этом регуляторе.
    Прощу рекомендовать какой PID применять при управлении МЭО с выходом подобным регулятора завода МЭТА (Минетерм 400). Этот регулятор при постояной длительности импульса меняет период их выдачи.
    Вложения Вложения

  2. #2

    По умолчанию

    что за плк?

  3. #3

    По умолчанию

    Цитата Сообщение от nlf Посмотреть сообщение
    Прощу рекомендовать какой PID применять при управлении.
    На форуме примеры рукодельных ПИД-регуляторов выкладывались вот их и использовать.
    На счет Pid из библиотеки UTIL.LIB - на объектах работает, но при пуске и после ресета ведет себя по началу неадекватно, а затем все нормуль :-)
    P. S. Все выше указанное проверено/обкатано на ПЛК100.
    Автоматизация Диспетчеризация Сервис
    e-mail: ads-kaluga@mail.ru

  4. #4

    По умолчанию

    Цитата Сообщение от ward Посмотреть сообщение
    что за плк?
    ПЛК 110.
    В форуме были рекомендации применять этот ПИД.

    Как я понимаю, библиотеки GоDeSys прошиваются при применении target фаилов. Предполагаю что здесь не все в порядке с ПИД .
    Пытался применять самодельные ПИД. Времени потрачено много, полезного выхода нет. Предпологаю что они зависимы от ПЛК.
    Привет вем с Алтая. Здесь наконец весна.

  5. #5

    По умолчанию

    Забыл упомянуть: я вызываю ПИД-регулятор раз в секунду, а выход подаю на VALVE_REG_NO_POS далее у меня релейные выхода ПЛК100.
    Управление клапана через его концевики, которые отключают привод в крайних положениях.

    (*==============Далее регулятор температуры ГВС============================*)
    TON_GVS(IN:= NOT TON_GVS.Q, PT:=t#1s);
    (*IF (-1000000>PID_GVS.D.OUT) AND (PID_GVS.D.OUT>1000000) THEN PID_GVS(reset:=TRUE); END_IF;*)
    IF iblnValveManContorl AND iblnIn220OFF THEN (*Проверим положение ручкпереключателя клапана (авт/руч) и наличие напряжения питания*)
    IF TON_GVS.q THEN (*Режим управления клапаном ГВС с периодичность 1 раз в секунду*)
    R_TRIG_ResetPid_GVS(CLK:=PID_GVS.OVERFLOW, Q=>PID_GVS.RESET); (*Перезапуск регулятора если интегральная сосотавляющая вырасла дофига*)
    PID_GVS(
    ACTUAL:=rlT_PrjamGVS,
    SET_POINT:=rlT_Zadan_Curent,
    KP:=0.01*iwdK_Proporc,
    TN:=WORD_TO_REAL(iwdTi),
    TV:=WORD_TO_REAL(iwdTd),
    Y_MANUAL:=0,
    Y_OFFSET:=0,
    Y_MIN:=0,
    Y_MAX:=100,
    MANUAL:=FALSE);
    END_IF (*IF TON_GVS.q THEN*)
    ELSE (*IF iblnValveAuto AND iblnIn220OFF THEN*)
    PID_GVS(reset:=TRUE);(*Готовим регулятор к работе*)
    END_IF (*IF iblnValveAuto AND iblnIn220OFF THEN*)


    IF PID_GVS.Y=0 THEN
    qblnMore:=FALSE;
    qblnLess:=TRUE;
    ELSIF PID_GVS.Y=100 THEN
    qblnMore:=TRUE;
    qblnLess:=FALSE;
    ELSE
    ValveGVS_REG_NO_POS(
    IN_VAL:=PID_GVS.Y,
    DBF:=0.5,
    FullMotionTime:= iwdTimeValveMove,
    LuftTime:=0,
    SYNC:=FALSE,
    ReversTime:=3,
    MinWork:=0.5,
    MinStop:=0.5,
    LESS=>qblnLess,
    MORE=>qblnMore);
    END_IF
    Автоматизация Диспетчеризация Сервис
    e-mail: ads-kaluga@mail.ru

  6. #6

    По умолчанию

    Спасибо за ответ.
    Но похоже этот регулятор с ПЛК 110 не работает.
    Буду пробовать дальше.
    К сожелению наладчиков регулятор с автонастройками не устраивает.
    Слышал звон, есть возможность импортировать регуляторы из Сименса.
    Но Сименсом не владею.
    Может кто выложит конвертацию из Сименса.

  7. #7

    По умолчанию

    Я выкладывал неоднократно, поищите на форуме.
    Там был простой регулятор (не глючный) самописаный, причем первоначально реализовали на сименсе. Отзывы неплохие. Потом где-то здесь же попадались регуляторы как раз для МЭО.
    У сименса тоже все регуляторы глюкавые, не обольщайтесь!
    Вот, нашел
    http://www.owen.ru/forum/attachment....3&d=1302694685
    Последний раз редактировалось Алексей Дмитриев; 25.05.2011 в 09:31.

  8. #8

    По умолчанию

    Этот регулятор приведен в стандарте МЭК, вместе с простейшей реализацией – основой для развития под свои нужды. Библиотека UTIL никуда не прошивается. Она написана на МЭК языках. Открываете ее в CoDeSys как обычный проект и смотрите реализацию.

  9. #9

    По умолчанию

    Как Вы это себе представляете, ведь исходников нет!

  10. #10

    По умолчанию

    Цитата Сообщение от Алексей Дмитриев Посмотреть сообщение
    Как Вы это себе представляете, ведь исходников нет!
    1. Запускаем CoDeSys.
    2. Файл->Открыть (Ctrl+O).
    3. В нижней части окна напротив надписи "Тип файла" из выподающего меню выбираем "Library (*.lib)"
    4. Теперь выбираем библиотеку "Util.lib"

    Библиотека открывается с возможностью просмотра/редактирования внутренностей.
    Автоматизация Диспетчеризация Сервис
    e-mail: ads-kaluga@mail.ru

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

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