Страница 413 из 431 ПерваяПервая ... 313363403411412413414415423 ... ПоследняяПоследняя
Показано с 4,121 по 4,130 из 4303

Тема: Фичи и баги OWEN Logic

  1. #4121

    По умолчанию

    Цитата Сообщение от RV9WFJ Посмотреть сообщение
    Переменными с квадратными скобками в имени они окончательно болт на массивы положили. Так что ничего хорошего в этом нет.
    Не положили, внутри ФБ, в именах не проходят никакие скобки. Массивы работают.
    Тут пишут про внешние переменные. Но скобки в именах это точно дичь.
    Кто мешает вместо rPressure_[bar] или rPressure_{bar} , написать rPressure_bar
    Последний раз редактировалось kondor3000; 07.09.2025 в 09:38.

  2. #4122

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Не положили, внутри ФБ, в именах не проходят никакие скобки. Массивы работают.
    Тут пишут про внешние переменные. Но скобки в именах это точно дичь.
    Кто мешает вместо rPressure_[bar] или rPressure_{bar} , написать rPressure_bar
    Пока позволяла среда Owen Logic - именовал, как считал нужным.
    Скорее всего, изначально пользовался без скобок, а потом или подглядел или случайно скопировал единицы измерения со скобками.
    На этих скобках не строилась стратегия работ. Просто была милая неповторимая возможность... уцелевшая в сетевых переменных...

    Возвращаясь к реально насущному вопросу - как ведёт себя новый ПИД для КЗР на краях диапазона оцениваемого положения регулирующего органа (на 0% и на 100%)?
    Выдаёт непрерывный сигнал или игнорирует положение и продолжает регулирование?
    Т.е. это стоящее обновление или пока лучше обходиться самодельным макросом?

  3. #4123

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Интересно, как реализован ПИД с КЗР - как аналоговый ПИД + макрос RegKZR (т.е. при аналоговом выходе ПИД в крайних точках КЗР перестаёт регулировать, т.к. непрерывно открывается или закрывается)?
    Или там алгоритм не учитывает расчётное значение выхода, а продолжает регулировать импульсами, которые соответствуют ситуации?

    У кого есть железная ПР205 - можете проверить на эмуляторе объекта?


    Понятно, что скобки в имени - отступление от стандарта, но я его удобно пристроил:
    - для аналоговых датчиков даю почти одинаковые имена - различия в единицах измерения в этих скобках [mA] или [bar] - для "сырого" и масштабированного значений
    - для переменных времени указываю единицы измерения [m], [s], [h] - очень удобно и при "стыковке" с макросом, вход которого оформлен аналогично - не требуется читать описание или искать внутри кода
    Добрый день.
    В режиме управления дискретным КЗР алгоритм не учитывает рассчитанное значение выхода Pwr. То есть, выходным сигналом, фактически, является приращение в + или в -. Из ближайших аналогов в нашем ассортименте приборов - у ТРМ32 подобный способ регулирования.
    Выход Pwr в данном режиме предназначен исключительно для удобства отображения.
    Инженер по продукту | ПР и Owen Logic
    email: k.korolev@owen.ru

  4. #4124

    По умолчанию

    В последней версии ST перестало работать правильно. В версии 2.10.367 правильно 1 367 версия.jpg в версии Owen Logic2.11.368 не правильно 1 Версия 368.jpg
    функция Min5 должна выдавать 4, а в последней версии выдаёт 2, четвёртая наработка самая маленькая 212410, у остальных одинаковая 222410
    Код:
    function Min5: udint; //имя функции и тип данных выхода
       
        var_input //объявление входных переменных       
            I1,I2,I3,I4, I5 : udint; //входная переменная с типом данных udint
        end_var
        
        var //объявление локальных переменных    
        end_var
    
       if I1<=I2 and I1<=I3 and I1<=I4 and I1<=I5 then
          Min5:=1; 
       elsif I2<=I1 and I2<=I3 and I2<=I4 and I2<=I5  then 
          Min5:=2; 
       elsif I3<=I1 and I3<=I2 and I3<=I4 and I3<=I5  then 
          Min5:=3;  
       elsif I4<=I1 and I4<=I2 and I4<=I3 and I4<=I5  then
          Min5:=4;
       elsif I5<=I1 and I5<=I2 and I5<=I3 and I5<=I4  then
          Min5:=5;
          
       end_if
       
     end_function
    Последний раз редактировалось kondor3000; 08.09.2025 в 11:14.

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

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    В последней версии ST перестало работать правильно. В версии 2.10.367 правильно 1 367 версия.jpg в версии Owen Logic2.11.368 не правильно 1 Версия 368.jpg
    функция Min5 должна выдавать 4, а в последней версии выдаёт 2, четвёртая наработка самая маленькая 212410, у остальных одинаковая 222410
    тут алиса утверждает что кот можно доработать предлагает такой
    Код:
    function Min5: udint;
    var_input
        I1, I2, I3, I4, I5: udint;
    end_var
    var
        min_value: udint;
        min_index: udint := 1;
    begin
        min_value := I1;
        
        IF I2 < min_value THEN
            min_value := I2;
            min_index := 2;
        END_IF;
        
        IF I3 < min_value THEN
            min_value := I3;
            min_index := 3;
        END_IF;
        
        IF I4 < min_value THEN
            min_value := I4;
            min_index := 4;
        END_IF;
        
        IF I5 < min_value THEN
            min_value := I5;
            min_index := 5;
        END_IF;
        
        Min5 := min_index;
    end_function
    вдруг её вариант будет работать во всех версиях
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  6. #4126
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,072

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    В последней версии ST перестало работать правильно.
    Зато эмуляции внутри этой же функции - норм.

    За сам факт возможности эмуляции ST-функций - респект.
    Но напихали модных/стильных/молодежных дебильных квадратиков с значениями прям в коде как в КДС3. Вот накой они нужны если показывают значение в конце цикла?
    И каждая 20 раз упоминаемая в коде переменная засирает всё своими квадратиками с одним и тем же дерьмом как голубь.
    Текущего в объявлениях достаточно. А любителям писать километровые пергаменты сделали бы отделяемые окно объяв и кода. Или вообще отдельное окно с свободно редактируемой табличкой. где можно указать что показывать
    Был этот голубиный помет в 367? (я пропустил этот момент) Есть довольные этим?


    вдруг её вариант будет работать во всех версиях
    Не. Косяк от матерых прогеров.
    Последний раз редактировалось Валенок; 08.09.2025 в 13:01.

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

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Был этот голубиный помет в 367? (я пропустил этот момент) Есть довольные этим?
    Эмуляцию ST добавили еще в версии 2.9.
    Не думаю, что есть довольные, потому что в режиме эмуляции код становится абсолютно нечитаемым

  8. #4128
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,072

    По умолчанию

    Просто - попробуйте 2 получить
    Код:
    function index: udint; 
       
        var_input 
           u1,u2: udint;
        end_var
        
        index := 1;
        IF u2 < u1 THEN
            index := 2;
        END_IF;
        
     end_function
    Это жене дно.png
    Они - знали. Заранее сняли
    Последний раз редактировалось Валенок; 08.09.2025 в 13:14.

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

    По умолчанию

    Да, в последней версии эмуляция работает криво

    Безымянный.png

  10. #4130

    По умолчанию

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

Страница 413 из 431 ПерваяПервая ... 313363403411412413414415423 ... ПоследняяПоследняя

Похожие темы

  1. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 404
    Последнее сообщение: 25.08.2020, 15:17
  2. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  3. OWEN Logic 1.2.0.14b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 40
    Последнее сообщение: 21.02.2011, 14:16
  4. OWEN Logic 1.1.0.11b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 58
    Последнее сообщение: 12.10.2010, 20:55

Ваши права

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