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

Тема: Дискретный PID регулятор V2

  1. #1

    По умолчанию Дискретный PID регулятор V2

    Обновление макроса:
    https://owen.ru/forum/showthread.php?t=34524


    Работа макроса основана на том, что по заданному времени хода привода из одного крайнего положения в другое вычисляется время перемещения привода на 1% (TP1).
    Посылая на счетчик CTN1 импульсы с интервалом в это время, на счетчике можно получить расчетный % открытия привода.
    Сравнивая этот % и % на выходе ПИД регулятора, вырабатываются управляющие дискретные сигналы откр. и закр. привода такой длительности, чтобы привод открылся/закрылся на нужный %.

    Макрос критичен к точности задания времени полного хода, поэтому его нужно замерять по факту с конкретным приводом.
    Если в приводе имеются значительные люфты, можно задать время их выборки, которое суммируется с временем хода при смене направления вращения(первый импульс).
    При включении ПР-ки, по фронту сигнала Test, по спаду сигнала 100% проводится калибровка исходной точки (закрытого положения привода).
    Так как неизвестно положение привода, то подается сигнал на закрытие полной длительности хода+20% для надежного закрытия(TOF1).
    Сигнал 100% используется для принудительного открытия привода, подается прямо на выход OPEN,сколько присутствует 100%, столько присутствует и OPEN.


    V_2. Во второй версии исправлена ошибка расчета времени на % хода, исправлено не закрытие привода при некоторых комбинациях появления сигналов 100% и Enable, добавлено мертвое время в 1цикл при переключении выходов OPEN / CLOSE, а также добавлены дополнительные входы, которые присутствуют в ПИД регуляторе (режим охлаждения, ограничение выходной мощности, пауза).
    Нужно понимать что ограничение минимальной мощности ПИД регулятора функционирует только при ПИД регулировании, при снятии сигнала Enable, либо при калибровке исходной точки привод все равно ПОЛНОСТЮ ЗАКРОЕТСЯ. Добавлен вход DZ_% задает дискретность позиционирования привода по сигналу ПИД регулятора, то есть на сколько выход ПИД должен стать больше либо меньше чтобы появился сигнал откр / закр. для уменьшения излишних срабатываний выходов.

    Untitled.png
    Вложения Вложения

  2. #2

    По умолчанию

    Уххх .. ещё первый попробовать не успел, а тут второй подъехал. В ближайшее время вроде будет проект где смогу попробовать его в деле.
    А как часто калибровка происходит?? Только при передкргивании энейбл или ещё что??

  3. #3

    По умолчанию

    При включении ПР-ки, по фронту сигнала Test, по спаду сигнала 100% проводится калибровка исходной точки (закрытого положения привода)

  4. #4
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    1,089

    По умолчанию

    А настолько ли важно знать текущее положение привода? Я тут набросал набросал регулятор на основе ШИМ: если управляющий сигнал больше нуля - открываем, меньше - закрываем.
    Вложения Вложения

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

    По умолчанию

    Влад12 а в процессе работы привод может быть полностью закрыт или открыт? Проводить калибровку на ходу так сказать...

  6. #6
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,168

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Влад12 а в процессе работы привод может быть полностью закрыт или открыт? Проводить калибровку на ходу так сказать...
    Если привод достигает крайних положений, как правило, это говорит о неправильной конструкции устройства(установки) или настройки ПИД-регулятора, я так думаю!
    Последний раз редактировалось Сергей0308; 27.09.2021 в 16:01.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  7. #7

    По умолчанию

    Ну не всегда. Есть же процессы с резко изменяющимся во времени по мощности. О
    Тот же ГВС, особенно на предприятиях. Ночью вообще потреблен я нет, да и линии циркуляции может не быть, а когда начинается утром разбор, то сразу на всю открывается.

  8. #8
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,168

    По умолчанию

    Цитата Сообщение от bayk Посмотреть сообщение
    Ну не всегда. Есть же процессы с резко изменяющимся во времени по мощности. О
    Тот же ГВС, особенно на предприятиях. Ночью вообще потреблен я нет, да и линии циркуляции может не быть, а когда начинается утром разбор, то сразу на всю открывается.
    Если рассматривать Ваш конкретный случай, то никакого конструирования там и близко не было, сделали как дешевле, а там хоть "трава не расти", кто так сделал, нельзя на "пушечный выстрел" подпускать к решению таких вопросов! Это называется не сконструировали, а загубили 100% дело! Исполнительный механизм гоняет из одного крайнего положения в другое, ПИД-регулятор не может справиться со своей задачей, в вашем случае ни один регулятор не справится, это просто невозможно сделать в принципе! Я имею ввиду поддержание температуры с точностью ± 1-5°С!
    Как бы для этого и конструкторы, чтобы решать технические проблемы, а не создавать их!

    Как правило такая сиюминутная экономия приводит к большим издержкам, если рассматривать ситуацию на протяжении нескольких лет!
    Последний раз редактировалось Сергей0308; 26.09.2021 в 15:59.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  9. #9

    По умолчанию

    Цитата Сообщение от Влад12 Посмотреть сообщение
    Обновление макроса:
    https://owen.ru/forum/showthread.php?t=34524


    Работа макроса основана на том, что по заданному времени хода привода из одного крайнего положения в другое вычисляется время перемещения привода на 1% (TP1).
    Посылая на счетчик CTN1 импульсы с интервалом в это время, на счетчике можно получить расчетный % открытия привода.
    Сравнивая этот % и % на выходе ПИД регулятора, вырабатываются управляющие дискретные сигналы откр. и закр. привода такой длительности, чтобы привод открылся/закрылся на нужный %.

    Макрос критичен к точности задания времени полного хода, поэтому его нужно замерять по факту с конкретным приводом.
    Если в приводе имеются значительные люфты, можно задать время их выборки, которое суммируется с временем хода при смене направления вращения(первый импульс).
    При включении ПР-ки, по фронту сигнала Test, по спаду сигнала 100% проводится калибровка исходной точки (закрытого положения привода).
    Так как неизвестно положение привода, то подается сигнал на закрытие полной длительности хода+20% для надежного закрытия(TOF1).
    Сигнал 100% используется для принудительного открытия привода, подается прямо на выход OPEN,сколько присутствует 100%, столько присутствует и OPEN.


    V_2. Во второй версии исправлена ошибка расчета времени на % хода, исправлено не закрытие привода при некоторых комбинациях появления сигналов 100% и Enable, добавлено мертвое время в 1цикл при переключении выходов OPEN / CLOSE, а также добавлены дополнительные входы, которые присутствуют в ПИД регуляторе (режим охлаждения, ограничение выходной мощности, пауза).
    Нужно понимать что ограничение минимальной мощности ПИД регулятора функционирует только при ПИД регулировании, при снятии сигнала Enable, либо при калибровке исходной точки привод все равно ПОЛНОСТЮ ЗАКРОЕТСЯ. Добавлен вход DZ_% задает дискретность позиционирования привода по сигналу ПИД регулятора, то есть на сколько выход ПИД должен стать больше либо меньше чтобы появился сигнал откр / закр. для уменьшения излишних срабатываний выходов.

    Untitled.png
    Сегодня целый день гонял ваш регулятор на объекте.
    Не годится.
    При малой мощности греющей среды еще куда не шло. Если же мощности с избытком, начинает гонять туда сюда с большим разбросом. Настройка: Пк 2 и меньше-не может выйти на задание начинает закрываться раньше, 2 и больше начинает перебирать при чем много.
    В общем жестко привязывать регулятор к значению с выхода ПИД плохая затея.
    Мой регулятор тоже берет значение с ПИД, но преобразовывает его в импульс вычисленной длительности от значения выхода ПИД и полного хода привода. Работает гораздо стабильнее вашего, т.к. жестко не привязан к выходу ПИД, имеет настройки "тайм аут" и зона нечувствительности (ограничение минимального хода), что позволяет исключить болтанку.
    Но тоже есть небольшие замечания, не доделан дифференциал и прочие мелочи, поэтому выкладывать пока не буду.

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

    По умолчанию

    Сергей0308 банально, котел нагрел и выключился, Т в помещении достигла заданной. Останови циркуляцию, запомнив положение привода, например 55%.
    Загони его в ноль (закрой) и верни обратно на 55% запустив циркуляцию. Вот вам и калибровка. Можно это делать по расписанию, например раз в сутки достаточно.

    Чем такой вариант не подходит, остановив на полминуты или меньше циркуляцию при выключенном котле ?

Страница 1 из 11 123 ... ПоследняяПоследняя

Похожие темы

  1. Дискретный PID регулятор
    от Влад12 в разделе Среда программирования OWEN Logic
    Ответов: 10
    Последнее сообщение: 16.04.2021, 07:57
  2. МК210-301 Дискретный вход
    от Kiril75 в разделе Мх210
    Ответов: 1
    Последнее сообщение: 01.07.2020, 10:38
  3. Ответов: 9
    Последнее сообщение: 25.05.2020, 15:17
  4. ПЛК304 дискретный вход
    от scmember в разделе ПЛК3хх
    Ответов: 9
    Последнее сообщение: 21.05.2020, 15:07
  5. Дискретный транзисторный выход
    от Crazy в разделе ПЛК1хх
    Ответов: 9
    Последнее сообщение: 05.06.2008, 14:12

Ваши права

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