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

Тема: ДРАКОН vs SFC

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

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

    По умолчанию ДРАКОН vs SFC

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    Давайте обсудим вот это.
    Язык ДРАКОН
    А давайте.

    Задача: есть кнопка "пуск". Если её нажимают, то нужно запустить насос. Если насос запущен, а через 10 секунд датчик давления не реагирует, считаем, что насос сломался, и пытаемся запустить следующий. Аналогично, если датчик давления потухнет при работающем насосе, тоже считаем насос поломанным.
    Как кнопку "пуск" отпускают насос нужно выключить.

    Собственно, вариант на ДРАКОНе:
    pumps.png

    Поясню:
    1) Схемы выполняются сверху вниз.
    2) Прямоугольники -- это какие-то действия.
    3) Трапеции типа 5, 8, 19, 24, 25 -- это "паузы" алгоритма (я их для наглядности отметил флажками). Как раз в них происходит "возврат управления в PLC_PRG.
    Здесь как раз существенное отличие от SFC. В SFC "за 1 раз" выполняется максимум 1 переход, а тут может выполниться много действий пока очередь не дойдёт до паузы или до конца.
    4) Шаг 7 это "запуск схемы <<запуск насоса>>". Иными словами, в начальный момент схема №2 не выполняется, а 1-ая схема ждёт команду "кнопки пуск". Если команда обнаружена, то запускается схема 2, но при этом схема 1 продолжает работать, она доходит до шага 9, обнаруживает, что "пуск ещё нажат" и возвращает управление, переходя на паузу 8
    5) Схема 2 после своего запуска проходит по шагам 14, 15, 16, 17, 21, 22, 23 и останавливается на 10 секунд на шаге 24 и только там она возвращает управление в основной цикл.
    6) Как только "схема 1" обнаруживает, что кнопку "пуск" отпустили, она просто останавливает схему "запуск насоса". При этом известно, что та находится в какой-то из своих пауз (19, 24, 25), поэтому останавливать её нестрашно.


    Что думаете?

    По-моему, возможность "просто поставить паузу посреди алгоритма" весьма точно выражает происходящее.
    Последний раз редактировалось Владимир Ситников; 07.10.2017 в 21:56.

Ваши права

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