Показано с 1 по 10 из 4360

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

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    По умолчанию

    Перед Новым годом (с неделю назад) столкнулся с багом Owen Logic.

    Весь проект, к сожалению, на форуме выложить не могу, но при дублировании претензии в техподдержку обязательно прикреплю.

    Проект автоматизации содержит несколько насосов, нагревателей, задвижек. Управление всем оборудованием возможно как в автоматическом режиме, так и в ручном режиме с панели оператора Weintek.

    Задвижки не имеют концевиков, поэтому управляются "на доверии" - т.е. в программе используется модель задвижки, которая по длительности сигналов "открыть" и "закрыть" вычисляет позицию и срабатывание концевиков (вопросы по решениям и подбору оборудования - к проектировщику, я лишь получаю ТЗ и реализую его).
    Эти задвижки открываются только перед пуском насосов для заполнения их водой. Поэтому повторяющийся код с моделью и условиями открытия-закрытия одной задвижки оформлен в макрос. По количеству задвижек программа содержит два макроса.

    Каюсь - до этой поры игнорировал предупреждения о циклических связях, поэтому программа содержала 11 таких сообщений. Но при этом, внутри использованных макросов циклических связей не было.

    Ошибка проявлялась следующим образом:

    Поведение наблюдал как по состояниям на панели, так и на ПР по значениям переменных в режиме онлайн-отладки.
    Во время ПНР и проверки исполнительных механизмов с панели оператора перевожу в ручной режим обе задвижки.
    Подаю сигнал открыть или закрыть на первую задвижку - через время полного хода (45 секунд) срабатывает "концевик" модели и соответствующее реле выключается и управляющее напряжение с привода снимается.
    А вот для второй задвижки срабатывание "концевика" выполняется почти сразу без выдержки времени полного хода в обоих направлениях (и открыть и закрыть).

    Ситуация странная, т.к. для каждой задвижки использовал экземпляры одного и того же макроса.

    Проблему решил устранением циклических связей - заменой соединительных линий на линии обратной связи.

    Ошибка воспроизводилась на ПР205-230.1211.22 и двух разных OwenLogic 2.10.367 и 2.11.370 (с заменой прошивки в ПР).

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

    Приведу внешний вид макросов в программе, чтобы показать, что все переменные подключены, не перепутаны. Назначение макросов - при поступлении запроса включения насоса перекачки воды - проверить его заполненность водой и при необходимости выполнить заполнение (открыть задвижку и включить погружной насос заполнения). Задвижки индивидуальные, а насос заполнения общий, поэтому сигнал его включения объединяется по OR.

    Повторюсь, проекты для ПР и Weintek отправлю в техподдержку, т.к. не могу их опубликовать.
    Но для себя сделал вывод, что предупреждения о циклических связях не столь безобидны.
    Изображения Изображения

Похожие темы

  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

Ваши права

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