Страница 5 из 13 ПерваяПервая ... 34567 ... ПоследняяПоследняя
Показано с 41 по 50 из 123

Тема: ST функции OWEN Logic

  1. #41

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Asu$Nick можно, но код внешне будет геморройнее...
    Да вот я и заходил с разных сторон, все время нужно быть затейником , чтобы эти мелкие ограничения обойти.
    В данном случае всего лишь надо разблокировать обычную возможность писать переменную многократно.
    Остальное ST поможет.
    Мне кажется ресурсов программы будет тратится намного меньше да и времени.
    У меня ПР103 был куплен, на тот момент в нем не было ST , так я даже вот эти Плюс 2 Минус 2 к счетчику из примера не смог сделать. Встроенные счетчики прибавляют по +1, произвольное число уже не задашь.

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

    По умолчанию

    Asu$Nick
    Встроенные счетчики прибавляют по +1, произвольное число уже не задашь.
    а делать умножение на свой шаг после штатного счетчика не пробовали?

  3. #43

    По умолчанию

    Цитата Сообщение от Asu$Nick Посмотреть сообщение
    Вот сделал пример, это кодесисный FBD.
    Какой получается программа, когда есть входы Enable и можно переменные переписывать.
    Программирование становится другим, сделать можно намного больше и читается легче.
    Пример 1. Здесь к одному входу могут подключаться два разных датчика в разное время, по фронту происходит подсчет дистанции по разным законам.
    Пример 2. Подсчет длины в плюс и минус.

    На лоджике получится уложится с селекторами? В каждом примере на ветку ушло по 3 элемента ( треугольник фронта тоже считаем)
    Вложение 65819Вложение 65820
    Вариант для примера 1
    изображение_2023-02-10_123914382.png

    Для примера 2 принцип такой-же.

    На ST, даже в его текущем виде, проблем реализации не видно

  4. #44
    Пользователь
    Регистрация
    14.07.2021
    Адрес
    Орел
    Сообщений
    89

    По умолчанию

    Функции же можно в условия добавлять. Если я правильно понимаю, это и есть ветвление...
    Вот такой код прекрасно работает и по идее выполняется только одна ветвь???
    Код:
    function fSel: udint; //имя функции и тип данных выхода
        var_input //объявление входных переменных
            IN1, IN2 : udint; //входная переменная с типом данных bool
            sel:bool;
        end_var
        var //объявление локальных переменных
            localVariable : real := 13.3; //локальная переменная с типом данных real и начальным значением 13.3
        end_var
       if sel then
       fSel:= function1(IN1);  
     else
        fSel:= function2(IN2);  
       end_if
     end_function
    ветвь.jpg

  5. #45

    По умолчанию

    Цитата Сообщение от lagutin Посмотреть сообщение
    Функции же можно в условия добавлять. Если я правильно понимаю, это и есть ветвление...
    Вот такой код прекрасно работает и по идее выполняется только одна ветвь???
    Да должна выполняться только 1 функция внутри. Но это не точно)))
    Кстати кроме SEL, есть ещё макросы в Менеджере которые выбирают значение которое менялось последним, есть для целочисленных и флоат, SelChgI SelChgF
    Последний раз редактировалось kondor3000; 10.02.2023 в 14:28.

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

    По умолчанию

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

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

  7. #47

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    это протестировано на реальном устройстве или логические рассуждения?
    Пока только логические, проверять не на чем.

  8. #48
    Пользователь
    Регистрация
    14.07.2021
    Адрес
    Орел
    Сообщений
    89

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Да должна выполняться только 1 функция внутри. Но это не точно)))
    .....
    Ну как не точно? Выполняется код функции, которая внутри условия. Другая же ветвь не выполняется? Что там еще тестировать то? Все работает. Ну если только и правда в железе не заработает?

  9. #49

    По умолчанию

    Цитата Сообщение от lagutin Посмотреть сообщение
    Ну как не точно? Выполняется код функции, которая внутри условия. Другая же ветвь не выполняется? Что там еще тестировать то? Все работает. Ну если только и правда в железе не заработает?
    Разговор не про работоспособность кода, а про увеличение длительности цикла программы, в зависимости от того, обе функции выполняются внутри функции или только одна по условию.

  10. #50
    Пользователь
    Регистрация
    14.07.2021
    Адрес
    Орел
    Сообщений
    89

    По умолчанию

    А как это проверить то? Но как она может выполняться, если код в else, к примеру, не выполняется, если первое условие выполнилось? Это у же слишком сильные заморочки и подозрительность

Страница 5 из 13 ПерваяПервая ... 34567 ... ПоследняяПоследняя

Похожие темы

  1. Групповые запросы в Owen Logic. Что хотите видеть в этой функции?
    от EvgenyR в разделе Программируемые реле
    Ответов: 37
    Последнее сообщение: 05.07.2023, 15:26
  2. Owen Logic 2.1 нет экспорта устройства в Owen Cloud.
    от Григори в разделе Среда программирования OWEN Logic
    Ответов: 4
    Последнее сообщение: 12.10.2022, 19:33
  3. Добавление аварийных ситуаций в Owen Logic на ПР200 для отображения в Owen Cloud.
    от Григори в разделе Среда программирования OWEN Logic
    Ответов: 6
    Последнее сообщение: 07.07.2022, 11:09
  4. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  5. Тригонометрические функции OWEN Logic
    от POMAXA в разделе Среда программирования OWEN Logic
    Ответов: 36
    Последнее сообщение: 13.02.2016, 12:11

Ваши права

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