Просмотр полной версии : Энергонезевасимые переменные и задержка в 1 цикл
Имеем Owen Logic 2.5.342.0. Для воспроизведения глюка создаем простой проект для ПР200 1.x.
Вход I1 связываем с двумя переменными:Test и TestEE. Для TestEE включаем опцию энергонезависимость.
Переменные Test и TestEE привязываем к выходам Q1 и Q2 соответственно. Запускаем режим симулятора в пошаговом режиме.
Клацаем на входе I1, чтобы он стал равен 1. Делаем 1 шаг и видим, что выход Q1 =1, а выход Q2 =0 (см. снимок экрана). Чтобы выход Q2 стал равен 1 нужно сделать еще 1 шаг.
Получается, что переменные с включенной опцией энергонезависимости запаздывают на один шаг.
Это баг или фитча, и где в документации подобное поведение описано?
72779
Энергонезависимые и сетевые переменные записываются в конце цикла. Так же, можно экранной переменной в свойствах поставить "запись в конце цикла"
Сергей0308
06.01.2024, 00:08
Имеем Owen Logic 2.5.342.0. Для воспроизведения глюка создаем простой проект для ПР200 1.x.
Вход I1 связываем с двумя переменными:Test и TestEE. Для TestEE включаем опцию энергонезависимость.
Переменные Test и TestEE привязываем к выходам Q1 и Q2 соответственно. Запускаем режим симулятора в пошаговом режиме.
Клацаем на входе I1, чтобы он стал равен 1. Делаем 1 шаг и видим, что выход Q1 =1, а выход Q2 =0 (см. снимок экрана). Чтобы выход Q2 стал равен 1 нужно сделать еще 1 шаг.
Получается, что переменные с включенной опцией энергонезависимости запаздывают на один шаг.
Это баг или фитча, и где в документации подобное поведение описано?
72779
За счёт этого работают многие мои алгоритмы:
72780
https://owen.ru/forum/showthread.php?t=12691&page=63
Проблема в чём, Вы хотите чтобы не работали мои алгоритмы?
Проблема в чём, Вы хотите чтобы не работали мои алгоритмы?
Особых проблем нет, просто пришлось чуть покопаться, чтобы понять почему программа работает не так как задумывалось. Такое поведение для энергонезависимых переменных неочевидно. В документации не нашел где оно описано. Соответственно не ясно, будет ли это работать так всегда или в очередной версии это поведение изменят.
Для задержки на один цикл есть линия задержки, а оказывается ее можно организовать еще, сделав переменную энергонезависимой.
Сергей0308
06.01.2024, 01:40
Особых проблем нет, просто пришлось чуть покопаться, чтобы понять почему программа работает не так как задумывалось. Такое поведение для энергонезависимых переменных неочевидно. В документации не нашел где оно описано. Соответственно не ясно, будет ли это работать так всегда или в очередной версии это поведение изменят.
Для задержки на один цикл есть линия задержки, а оказывается ее можно организовать еще, сделав переменную энергонезависимой.
Утверждать не буду, работало ли так изначально, изначально и энергонезависимых переменных не было, в ПР110!
Но, сколько помню, всегда вроде так работало! А, что никогда не менялось, в смысле, туда-сюда, это точно!
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot