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

Тема: ПЛК + ТРМ

  1. #1

    По умолчанию ПЛК + ТРМ

    День добрый!
    ПЛК154 соединен с ТРМ210 по RS485. В проекте участвуют несколько задатчиков температуры, с соответствующими ПИД-коэффициентами. В связи с этим есть необходимость включать при помощи ПЛК автонастройку ТРМ с последующим запоминанием коэффициентов. Получается следующее: после завершения автонастройки, обновленные коэффициенты перезаписываются программой, в результате чего успевает обновиться только пропорциональность, а интеграл и дифференциал - нет. Есть ли возможность на время автонастройки программно отключить переменные записи коэффициентов в ТРМ (в данном случае %QB11.1.1, %QB11.1.2, %QB11.1.3)? Или существуют другие варианты?
    Вложения Вложения

  2. #2

    По умолчанию

    Цитата Сообщение от Владислав Г. Посмотреть сообщение
    День добрый!
    ПЛК154 соединен с ТРМ210 по RS485. В проекте участвуют несколько задатчиков температуры, с соответствующими ПИД-коэффициентами. В связи с этим есть необходимость включать при помощи ПЛК автонастройку ТРМ с последующим запоминанием коэффициентов. Получается следующее: после завершения автонастройки, обновленные коэффициенты перезаписываются программой, в результате чего успевает обновиться только пропорциональность, а интеграл и дифференциал - нет. Есть ли возможность на время автонастройки программно отключить переменные записи коэффициентов в ТРМ (в данном случае %QB11.1.1, %QB11.1.2, %QB11.1.3)? Или существуют другие варианты?
    Во первых, у вас неправильно организована конфигурация, надо разнести чтение и запись в разные UMD с разными настройками, читать циклически, записывать по изменению.
    Во вторых, присваивание переменных в регистры записи через MOVE, можно сделать по биту окончания автонастройки, либо отключать запись во время автонастройки.
    Последний раз редактировалось kondor3000; 26.10.2021 в 11:13.

  3. #3

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Во первых, у вас неправильно организована конфигурация, надо разнести чтение и запись в разные UMD с разными настройками, читать циклически, записывать по изменению.
    Во вторых, присваивание переменных в регистры записи через MOVE, можно сделать по биту окончания автонастройки, либо отключать запись во время автонастройки.
    Спасибо, конфигурацию поменял, теперь запись и считывание происходит корректно. Единственное - при завершении автонастройки включается таймер ТР_0, который отключает автонастройку, ТРМ савит АТ в STOP, но не смотря на это индикатор АТ светится и автонастройка продолжает работать. Мне пришлось отключить RS (запуск/остановка регулирования), по завершению автонастройки, что помогло. Но может есть возможность отключать автонастройку без RS?

  4. #4

    По умолчанию

    Цитата Сообщение от Владислав Г. Посмотреть сообщение
    Спасибо, конфигурацию поменял, теперь запись и считывание происходит корректно. Единственное - при завершении автонастройки включается таймер ТР_0, который отключает автонастройку, ТРМ савит АТ в STOP, но не смотря на это индикатор АТ светится и автонастройка продолжает работать. Мне пришлось отключить RS (запуск/остановка регулирования), по завершению автонастройки, что помогло. Но может есть возможность отключать автонастройку без RS?
    Как отключать, это не принципиально, главное, что бы работало правильно. Можно использовать логику, блоки сравнения, можно SEL и ещё куча вариантов.
    Вы же в доп. программе используете язык ST, там в конструкции IF ... THEN можно напрограммировать что угодно))) и без всяких таймеров. Мне вообще непонятно, почему вы применяете блоки MOVE с ЕТ/ENO, умножение и деление квадратиками и используете CFC, вместо ST, где всё можно написать в 5-7 строк. Надо зная все исходные сигналы, правильно поставить задачу и реализовать её).
    Вынести это всё в ФБ, а уже в PLC_PRG будут 2 ФБ, со входами и выходами в CFC для наглядности.
    Последний раз редактировалось kondor3000; 27.10.2021 в 16:25.

  5. #5

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Мне вообще непонятно, почему вы применяете блоки MOVE с ЕТ/ENO, умножение и деление квадратиками и используете CFC, вместо ST, где всё можно написать в 5-7 строк. Надо зная все исходные сигналы, правильно поставить задачу и реализовать её).
    Общая программа написана на ST. А в этой программе я отрабатывал управление ТРМ и CFC применен только для наглядности. Вопрос не в конструкциях и не в языке, а в том, что после остановки автонастройки она продолжает работать не смотря на то, что АТ = STOP.

Ваши права

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