Страница 476 из 477 ПерваяПервая ... 376426466474475476477 ПоследняяПоследняя
Показано с 4,751 по 4,760 из 4770

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

  1. #4751

    По умолчанию

    Да, OwenLogic для каждого прибора держит собственный формат cvs файла импорта-экспорта.
    Делаете для новой платформы образец, который заполняете копированием из другого открытого файла.
    Адреса регистров заполняете автоматически по условию "=ЯчейкаАдресаВерхнегоРегистра+ЕСЛИ(ЯчейкаТипаВерх негоРегистра="Long";1;2)" - записал по памяти, может немного ошибся.

    Я заполняю десятки и сотни переменных, как сетевых, так и стандартных, а штатным редактором пользуюсь крайне редко.

  2. #4752

    По умолчанию

    Обнаружил ошибку в симуляторе ПР205 для сетевых переменных.

    Как воспроизвести:
    1. объявить две сетевые целочисленные переменные, расположенные по последовательным адресам, объявить их энергонезависимыми и присвоить ненулевые начальные значения
    2. на экране создать два элемента "ввод / вывод времени" и привязать обе переменные к этим элементам

    При эмуляции переменные ведут себя как независимые и на экранных элементах показывают значения, соответствующие значениям по умолчанию.

    На реальном ПР205 экранные элементы работают с непрерывными областями памяти в 4 байта и отображают на экране не значения отдельных регистров Modbus, а значения из объединения регистров.

    Само по себе объяснение этому простое и поведение на реальном оборудовании ожидаемое, но поведение в симуляторе - ошибочное.

    Прикладываю
    - тестовую программу
    - скрин эмулятора
    - фото реального прибора при работе
    Видно разные способы обработки пересекающихся участков памяти в симуляторе и в реальном приборе
    Изображения Изображения
    Вложения Вложения

  3. #4753
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    2,187

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Обнаружил ошибку в симуляторе ПР205 для сетевых переменных.

    Как воспроизвести:
    1. объявить две сетевые целочисленные переменные, расположенные по последовательным адресам, объявить их энергонезависимыми и присвоить ненулевые начальные значения
    2. на экране создать два элемента "ввод / вывод времени" и привязать обе переменные к этим элементам

    При эмуляции переменные ведут себя как независимые и на экранных элементах показывают значения, соответствующие значениям по умолчанию.

    На реальном ПР205 экранные элементы работают с непрерывными областями памяти в 4 байта и отображают на экране не значения отдельных регистров Modbus, а значения из объединения регистров.

    Само по себе объяснение этому простое и поведение на реальном оборудовании ожидаемое, но поведение в симуляторе - ошибочное.

    Прикладываю
    - тестовую программу
    - скрин эмулятора
    - фото реального прибора при работе
    Видно разные способы обработки пересекающихся участков памяти в симуляторе и в реальном приборе
    Так это не ошибка симулятора. И для меня очень неожиданно получить такой результат

  4. #4754

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Обнаружил ошибку в симуляторе ПР205 для сетевых переменных.

    Как воспроизвести:
    1. объявить две сетевые целочисленные переменные, расположенные по последовательным адресам, объявить их энергонезависимыми и присвоить ненулевые начальные значения
    2. на экране создать два элемента "ввод / вывод времени" и привязать обе переменные к этим элементам

    При эмуляции переменные ведут себя как независимые и на экранных элементах показывают значения, соответствующие значениям по умолчанию.

    На реальном ПР205 экранные элементы работают с непрерывными областями памяти в 4 байта и отображают на экране не значения отдельных регистров Modbus, а значения из объединения регистров.

    Само по себе объяснение этому простое и поведение на реальном оборудовании ожидаемое, но поведение в симуляторе - ошибочное.
    На экране выведено число 4178313227, состоящее из 2 регистров (число 11 передаётся в регистр 16385 ) 1 Панель и время.jpg
    и 63756 например уже было записано в следующий регистр 16386. На скрине дата разложена на байты и собрано в 2 WORD.
    Для подтверждения наличия бага, надо как минимум прочитать число в регистре 16386 или записать туда ноль.
    Последний раз редактировалось kondor3000; 06.09.2026 в 11:00.

  5. #4755

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Для подтверждения наличия бага, надо как минимум прочитать число в регистре 16386 или записать туда ноль.
    "Я ж не о том, что по ноге кнутом, я ж о том, что - больно!" (c)

    Баг состоит в различном поведения симулятора и реального ПР205 - что подтверждено скрином из симулятора и фотографией экрана. И отличия в содержимом экрана на фото и на скрине этот баг подтверждают.

  6. #4756
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    2,187

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    "Я ж не о том, что по ноге кнутом, я ж о том, что - больно!" (c)

    Баг состоит в различном поведения симулятора и реального ПР205 - что подтверждено скрином из симулятора и фотографией экрана. И отличия в содержимом экрана на фото и на скрине этот баг подтверждают.
    А если не в контрол писать а в обычную переменную, что получится?
    Конечно, косяк, но может это контрол как-то соседний регистр подтягивает, а с переменной будет норм?

  7. #4757

    По умолчанию

    Цитата Сообщение от Dimensy Посмотреть сообщение
    А если не в контрол писать а в обычную переменную, что получится?
    Конечно, косяк, но может это контрол как-то соседний регистр подтягивает, а с переменной будет норм?
    Да, со "стандартными переменными" всё хорошо и всё ожидаемо работает и в симуляторе и на аппаратуре. Проверял.

    Баг выявил, когда по просьбе других людей разбирал неработоспособность программы, которая отлично работает в симуляторе - люди ответственные и до выезда на объект проверили работоспособность в симуляторе.

    Зная, что контролу нужно 4 байта, а Modbus регистр имеет размер 2 байта - можно найти выход в добавлении смежного регистра. Или каким-то другим способом.
    Я бы поостерёгся делать предположение о последовательном размещении в памяти регистров, т.к. видел реализации на основе списков - пары регистр и его адрес. И Овен нигде не гарантировал такое размещение.

    Исходная проблема - разное поведение в симуляторе и аппаратуре.

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

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Да, со "стандартными переменными" всё хорошо и всё ожидаемо работает и в симуляторе и на аппаратуре. Проверял.

    Баг выявил, когда по просьбе других людей разбирал неработоспособность программы, которая отлично работает в симуляторе - люди ответственные и до выезда на объект проверили работоспособность в симуляторе.

    Зная, что контролу нужно 4 байта, а Modbus регистр имеет размер 2 байта - можно найти выход в добавлении смежного регистра. Или каким-то другим способом.
    Я бы поостерёгся делать предположение о последовательном размещении в памяти регистров, т.к. видел реализации на основе списков - пары регистр и его адрес. И Овен нигде не гарантировал такое размещение.

    Исходная проблема - разное поведение в симуляторе и аппаратуре.
    Спасибо. А, можно попробовать скормить контролу последний в таблице регистр (20479). Интересно, что будет. И, по хорошему, этим должен Овен заниматься - такой косяк пропустить

  9. #4759

    По умолчанию

    Проверил с регистром 20479 - аналогичная ошибка, только на реальном ПР205 совсем другое значение, чем для первых двух регистров из примера выше.

    Реакции от представителей Овен здесь не последовало - кину в багрепорт ТП.

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

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    Проверил с регистром 20479 - аналогичная ошибка, только на реальном ПР205 совсем другое значение, чем для первых двух регистров из примера выше.

    Реакции от представителей Овен здесь не последовало - кину в багрепорт ТП.
    Другое значение - это просто мусор в ячейке. Насколько я помню, народ уже сталкивался с тем,что при прошивке программа пишется поверх без очистки памяти

Страница 476 из 477 ПерваяПервая ... 376426466474475476477 ПоследняяПоследняя

Похожие темы

  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

Ваши права

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