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

Тема: сравнение в Ld

  1. #1

    По умолчанию сравнение в Ld

    подскажите как реализовать задачу на Ld.необходимо сравнивать значение входного параметра с заданной уставкой и включать если выше.

  2. #2

    По умолчанию

    Ну вообще это уже не LD а FBD или CFC надо использовать.
    Но в порядке исключения можно - есть возможность вставлять в цепь не просто фб а FB with En. Дальше как в FBD. В принципе блок может быть любым...

  3. #3

    По умолчанию

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    Ну вообще это уже не LD а FBD или CFC надо использовать.
    Но в порядке исключения можно - есть возможность вставлять в цепь не просто фб а FB with En. Дальше как в FBD. В принципе блок может быть любым...
    Можно ли вставить в середину цепи?

  4. #4

    По умолчанию

    А попробовали?
    Можно. Но в этом случае предыдущее выражение на цепи будет разрешением на исполнение блока...
    Блок с EN - блок с разрешением на исполнение. На вход EN пришло true - блок исполняется, false - не исполняется.
    А сравниваемые значения уже на 2 и 3 входа соответственно.

  5. #5

    По умолчанию

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    А попробовали?
    Можно. Но в этом случае предыдущее выражение на цепи будет разрешением на исполнение блока...
    Блок с EN - блок с разрешением на исполнение. На вход EN пришло true - блок исполняется, false - не исполняется.
    А сравниваемые значения уже на 2 и 3 входа соответственно.
    Конечно пробовал, но в этом случае блок становится правым, и его выхода нельзя использовать в этой цепи. В Step7 и Unity Pro так делал (не используя ENO).

  6. #6

    По умолчанию

    Не очень понял что значит правым... Выложите программку и описание что хотели сделать...
    Возможно использование CoDeSys будет иметь свои особенности, но не думаю, что что-то критичное

  7. #7
    Пользователь
    Регистрация
    10.01.2007
    Адрес
    Красноярск
    Сообщений
    138

    По умолчанию

    Правым скорее означает, что блок сравнения в LD CoDeSys может быть только выходной инстукцией как -( )- или -(S)-.
    В реализации LD других производителей часто встречаются инструкции сравнения как входные инструкции, т.е. возможна ,например, такая запись

    -| |--|/|--[A>B]--| |------------------(S)-

    Удобно, в LD CoDeSys приходится же прибегать к дополнительным промежуточным переменным

  8. #8

    По умолчанию

    Цитата Сообщение от SergeyNG Посмотреть сообщение
    Правым скорее означает, что блок сравнения в LD CoDeSys может быть только выходной инстукцией как -( )- или -(S)-.
    В реализации LD других производителей часто встречаются инструкции сравнения как входные инструкции, т.е. возможна ,например, такая запись

    -| |--|/|--[A>B]--| |------------------(S)-

    Удобно, в LD CoDeSys приходится же прибегать к дополнительным промежуточным переменным
    Да. Совершенно верно.

  9. #9

    По умолчанию

    А в этих программах сколько языков программирования? Случайно не два?

    В любом случае - будем считать это особенностью CoDeSys. Во всем есть свои плюсы и минусы

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

    Thumbs up

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    А в этих программах сколько языков программирования? Случайно не два?

    В любом случае - будем считать это особенностью CoDeSys. Во всем есть свои плюсы и минусы
    В каких два, в каких один, а при чем здесь количество языков?

    Да, особенность не переделаешь!
    Но если очень хочется такую форму записи, то можно сделать свой FB. Например, FB A>B:

    FUNCTION_BLOCK FGT
    var_input
    EN: BOOL;
    IN1: INT;
    IN2: INT;
    end_var

    var_output
    Q: BOOL;
    end_var

    тело на ST:
    Q:=EN AND (IN1>IN2);
    А в основной программе на LD для всех подобных вычислений использовать только один экземпляр этого FB

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

Ваши права

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