Страница 4 из 14 ПерваяПервая ... 23456 ... ПоследняяПоследняя
Показано с 31 по 40 из 136

Тема: Специальные ,функционально законченные макросы

  1. #31
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,490

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Функция, преобразователь типа данных из INT16 в FLOAT! Чтобы сразу не заругали скажу, что в ОЛ такой нет.
    Вложение 20519
    Макрос в проекте, там есть и обратная функция!
    Так и должно быть? Снимок.JPG

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

    По умолчанию

    Цитата Сообщение от Василий Кашуба Посмотреть сообщение
    Так и должно быть? Снимок.JPG
    На вход подаются коды чисел в WORD в диапазоне 0 - 65535! И макросы нужны когда вы по сети отрицательные значения передаёте в INTе на ПР или из ПР! Например код 65535 соответствует в INTе числу "-1"! А число "-7", как на Вашей картинке, имеет код 65529!
    7.PNG
    https://ru.wikipedia.org/wiki/%D0%A6...BA.D0.BE.D0.BC
    INT.PNG
    Последний раз редактировалось Сергей0308; 23.10.2015 в 22:46.

  3. #33

    По умолчанию

    Добрый вечер! А не могли бы вы помочь в в ваш макрос АВАРИЯ внести изменения, добавить вход сброса аварии, естественно за счет уменьшения входов аварий. Сброс нужен после прочтения для повторного запуска оборудования. Спасибо! Мой email:abrsikov@gmail.com

  4. #34
    Пользователь
    Регистрация
    25.02.2016
    Адрес
    Кострома
    Сообщений
    276

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    Оцените. ПИД-регулятор с включением ограничения при входе в диапазон.
    Не работает у Вас интегральное звено. В принципе не нашел ни чего вменяемого для ПР200, пришлось свой регулятор лепить.
    В симуляторе проверил, будем пробовать на деле, на ПР200. Жаль что для отладки можно только вывод на дисплей использовать, о результатах отпишусь.
    Описание:
    УНИВЕРСАЛЬНЫЙ ПИД - РЕГУЛЯТОР.
    Для работы необходимо подать на вход Sync тактовые импульсы, задать ограничение выхода (диапазон работы регулятора), настроить коэффициенты Kp, Ki, Kd и установить "1" на входе Enable.
    Особенности:
    1. Изменяя частоту тактовых импульсов оптимизируется под процессы любой длительности.
    2. Установив коэффициенты Kp, Ki, Kd в "0" можно исключить соответствующую часть регулятора из процесса превратив его в П-, ПИ-, ПД- ...
    3. Накопление интегральной части ограничено значениями Min и Max, теми же что и выход регулятора.
    4. Коэффициенты и выход регулятора целочисленные (для удобства).
    5. При вЫключении входа Enable сбрасываются все переменные и накопленная интегральная составляющая (типа сброс).
    https://www.dropbox.com/s/9m3lff9kcf...i_PID.tpl?dl=0

    PS: Пока буду прикручивать через реле, но потом потребуются аналоговые выходы. Кто подскажет как с аналоговым выходом у ПР200 работать, какой диапазон значений на подавать?
    Последний раз редактировалось stesel; 29.02.2016 в 05:00.

  5. #35
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,113

    По умолчанию

    0..........1
    электронщик до мозга костей и не только

  6. #36

    По умолчанию

    Цитата Сообщение от stesel Посмотреть сообщение
    Не работает у Вас интегральное звено. В принципе не нашел ни чего вменяемого для ПР200, пришлось свой регулятор лепить.
    В симуляторе проверил, будем пробовать на деле, на ПР200. Жаль что для отладки можно только вывод на дисплей использовать, о результатах отпишусь.
    Начальная версия.
    Вот окончательная, с рабочим интегральным звеном.

    На форум можете положить?
    .OWL нормально к сообщению прикрепляется. TPL увы, нет.

    https://www.dropbox.com/s/9m3lff9kcf...i_PID.tpl?dl=0
    PS: Пока буду прикручивать через реле, но потом потребуются аналоговые выходы. Кто подскажет как с аналоговым выходом у ПР200 работать, какой диапазон значений на подавать?
    0-1 диапазон сигнала на выход ПР.
    Вложения Вложения

  7. #37

    По умолчанию

    stesel Вы c интегральной составляющей также наступили на те грабли, на которых я отплясывал. (пока не перечитал заново раздел "интегрирование" в справочнике по инженерной математике ).
    Интегральная составляющая накапливается в течение довольно длительного времени, 1 периода тактового сигнала недостаточно.
    Интегральная составляющая - разность dt/dt1 высчитанная "скользящим окном" за относительно большой промежуток времени, (в своём регуляторе делал накопление за 1,5-3сек).
    Ваш интегратор
    Интегратор ПИД.JPG
    Мой интегратор
    Интегратор ПИД_мой.JPG

  8. #38

    По умолчанию

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

  9. #39
    Пользователь
    Регистрация
    25.02.2016
    Адрес
    Кострома
    Сообщений
    276

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    stesel Вы c интегральной составляющей также наступили на те грабли, на которых я отплясывал. (пока не перечитал заново раздел "интегрирование" в справочнике по инженерной математике ).
    Интегральная составляющая накапливается в течение довольно длительного времени, 1 периода тактового сигнала недостаточно.
    Интегральная составляющая - разность dt/dt1 высчитанная "скользящим окном" за относительно большой промежуток времени, (в своём регуляторе делал накопление за 1,5-3сек).
    Смотрите внимательно, накапливается бесконечно долго. Формула I(t) = I(t-1) + Ki * e (t) предусматривает предыдущий результат собственного вычисления. Проверить просто: ставите Kp = 0, Kd=0, Ki>0 соответственно играете значениями уставки и датчика получает результат K(p) будет постоянно увеличиваться или уменьшаться если есть ошибка и остановится на каком-либо значении, если ошибка будет равна нулю (уставка и датчик будут одинаковы). То есть I составляющая как положено будет стремиться свести к нулю рассогласование (ошибку) регулирования.

    PS: Алексей Геннадьевич подскажите пожалуйста: как Вы сделали входные переменные (константы) для макроса, те что в параметрах макроса отображаются как kD_mul, SP_mul, kI_mul?
    Последний раз редактировалось stesel; 29.02.2016 в 12:30.

  10. #40
    Пользователь
    Регистрация
    18.07.2013
    Адрес
    уфа
    Сообщений
    260

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    Начальная версия.
    Вот окончательная, с рабочим интегральным звеном.
    Вот бы к вашим ПИД еще и автонастройку
    кстати связь с ПК при работе Вашего ПИД тоже пропадает

Страница 4 из 14 ПерваяПервая ... 23456 ... ПоследняяПоследняя

Похожие темы

  1. Универсальные макросы для OWEN Logic
    от rovki в разделе Среда программирования OWEN Logic
    Ответов: 827
    Последнее сообщение: 22.12.2023, 13:20
  2. Специальные символы
    от CEkip в разделе ПЛК63/73
    Ответов: 8
    Последнее сообщение: 02.11.2018, 08:50

Ваши права

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