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

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

  1. #4121

    По умолчанию

    Переменными с квадратными скобками в имени они окончательно болт на массивы положили. Так что ничего хорошего в этом нет.

  2. #4122

    По умолчанию

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

  3. #4123

    По умолчанию

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

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

  4. #4124

    По умолчанию

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

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


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

  5. #4125

    По умолчанию

    В последней версии 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.

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

    По умолчанию

    Цитата Сообщение от 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

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

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

    По умолчанию

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

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


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

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

    По умолчанию

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

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

    По умолчанию

    Просто - попробуйте 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.

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

    По умолчанию

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

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

Страница 413 из 426 ПерваяПервая ... 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

Ваши права

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