Страница 7 из 8 ПерваяПервая ... 5678 ПоследняяПоследняя
Показано с 61 по 70 из 79

Тема: Пид регулятор Codesys

  1. #61

    По умолчанию

    Ты имееш ввиду пропорциональный коэфициен? я пробовал начинает регулировать за 3-4 до уставки и некак недоходит до ее
    Т.е. уставка - 25 а пид пляшет в районе -21 градуса
    При этом я врубаю холодильную машину на всю катушку принудительно пака не перевалит за 5 градуса до уставки
    И только потом включаю пид иначе пид болтается в + температуре

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

    По умолчанию

    Цитата Сообщение от Инженер23 Посмотреть сообщение
    Также регулятору передается максимальное и минимальное значение только он сам его нифига не ограничивает (только интегральную составляющую он ограничивает этими значениями) так что нужно вручную прописывать услевия если результат меньше минимума то установить минимум если больше максимума то установить максимум, а если в диапазоне то присвоить результат ПИД
    вот код CTRL_OUT, выход не может не ограничиваться
    Код:
    (* Limit the output *)
    IF Y > LIM_L AND Y < LIM_H THEN
    	LIM := FALSE;
    ELSE
    	Y := LIMIT(LIM_L, Y, LIM_H);
    	LIM := TRUE;
    END_IF;
    а по поводу
    Первое нужно вычислить разницу между уставкой и текущим значением и результат передать ПИД регулятору
    а зачем тогда используется CTRL_IN если не для вычисления разницы между уставкой и актуальным значением. Получается под ПИД-ом Вы понимаете ПОУ начинающееся на FT_ , а не CTRL_
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

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

    По умолчанию

    Цитата Сообщение от divinewinhs Посмотреть сообщение
    Ты имееш ввиду пропорциональный коэфициен? я пробовал начинает регулировать за 3-4 до уставки и некак недоходит до ее
    Т.е. уставка - 25 а пид пляшет в районе -21 градуса
    При этом я врубаю холодильную машину на всю катушку принудительно пака не перевалит за 5 градуса до уставки
    И только потом включаю пид иначе пид болтается в + температуре
    там есть еще параметр offset, видимо он для этого и нужен чтоб подстраивать в таких случаях. Тут дело не в программировании а в подборе коэффициентов индивидуально для каждого объекта
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  4. #64

    По умолчанию

    С плюсом все идеально! Если текущая температура в обьеме допустим +25 и задать уставку +5 или +10 то включится холодильник и будет охлождать как надо в районе +- 0.5 от уставки, а вот с отрицательной уставкой полная хрень

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

    По умолчанию

    вобще то, разницы не должно быть, там diff рассчитывается как абсолютное значение между уставкой и актуальным значением

    ЗЫ хотя нет, абсолютное значение только для мертвойзоны используется, а для diff просто разница, в этом наверное и проблема
    Последний раз редактировалось capzap; 26.07.2016 в 13:17.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  6. #66

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    вобще то, разницы не должно быть, там diff рассчитывается как абсолютное значение между уставкой и актуальным значением

    ЗЫ хотя нет, абсолютное значение только для мертвойзоны используется, а для diff просто разница, в этом наверное и проблема
    и как мне это поправить? чтобы пид и на - работал

    это реальное упущение можно багрепорт отправить с правками

    Нашел где срабатывает исключение!
    Да ты был прав все дело в дед зоун

    Код:
    If ABS(X) > L then
     Dead_zone:=X;
    elseif Dead_zone> 0.0 then 
      Dead_zone:=-X;
    else
    Dead_zone:=0.0;
    end_if
    Последний раз редактировалось divinewinhs; 27.07.2016 в 07:29.

  7. #67

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    вот код CTRL_OUT, выход не может не ограничиваться
    Код:
    (* Limit the output *)
    IF Y > LIM_L AND Y < LIM_H THEN
    	LIM := FALSE;
    ELSE
    	Y := LIMIT(LIM_L, Y, LIM_H);
    	LIM := TRUE;
    END_IF;
    а по поводуа зачем тогда используется CTRL_IN если не для вычисления разницы между уставкой и актуальным значением. Получается под ПИД-ом Вы понимаете ПОУ начинающееся на FT_ , а не CTRL_
    Я использую FT_PID и CTRL_OUT и CTRL_IN не использовал

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

    По умолчанию

    Цитата Сообщение от Инженер23 Посмотреть сообщение
    Я использую FT_PID и CTRL_OUT и CTRL_IN не использовал
    ну так значит надо брать CTRL_PID и самому ни чего не придется добавлять
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

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

    По умолчанию

    Цитата Сообщение от divinewinhs Посмотреть сообщение
    и как мне это поправить? чтобы пид и на - работал
    чтоб в оскат ни чего не менять, мне кажется должно сработать если на вход подавать уставку и текущее значение пропуская через функцию ABS, а сам ПИД поставить в режим нагрева, естественно только для отрицательных значений, если текущее положительное, то надо еще какой то изврат придумывать
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  10. #70

    По умолчанию

    Мне нужно и на плюс и на минус, столкнулся с проблемой что мои правки начинает работать на минус , и естественно тогда плюс перестает работать

Страница 7 из 8 ПерваяПервая ... 5678 ПоследняяПоследняя

Похожие темы

  1. ПИД регулятор
    от Николаев Андрей в разделе ПЛК (среда CoDeSys V2.3)
    Ответов: 509
    Последнее сообщение: 26.03.2024, 13:41
  2. ПИД регулятор
    от Александр М в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 22.10.2007, 08:47

Ваши права

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