Цитата Сообщение от gtfox Посмотреть сообщение
"Паралельные" бывают только физические процессы, а вычислительные - последовательные, хоть вы и видите в SFC 2 одновременно работающих состояния.
Хм. В стандарте МЭК такого требования нет. Кроме состояний в SFC еще есть и действия. Они способны работать параллельно, независимо от состояний . Исполнитель SFC имеет полное право вешать их на разные процессы. В многоядерных системах будет физически параллельно.
Цитата Сообщение от gtfox Посмотреть сообщение
"Если 2 физических процесса происходят одновременно, то для их описания используются 2 автомата, которые запускаются по изменению 1 логической переменной. Если нужно одному подождать - смотрим за номером состояния другого..
Значит параллелизм в автоматном подходе есть. Он выражается гиперавтоматом. В нем реализуется простейший механизм синхронизации задач (автоматов). Его приходится самостоятельно кодировать в прикладной программе, вместо того чтобы использовать готовые механизмы ОС.
Цитата Сообщение от gtfox Посмотреть сообщение
"... "любой момент в физ.объекте" наступает не раньше чем ПЛК опросит входы в начале цикла, и этот момент не сдвинется до следующего цикла. В это время последовательно обрабатываете любые аварии.. .
Допустим, иногда внутри этого цикла делаются некоторые громоздкие вычисления или блокирующая запись на флеш диск и др. В итоге, наш цикл подзастревает допустим на 1-2 секунды. Еще есть аварийный вход. По его изменению реакция обязана происходить, например, за 1 мс. Решение: на быстрый вход ПЛК вешаем событийную задачу с высшим приоритетом. Она мгновенно останавливает цикл и делает то, что должна. Нигде никакого лишнего кода писать не приходится. Для программирования напрягли 0.5 извилины.
Автоматный подход очень полезная штука. Раздражают только попытки подать его как универсальную ‘суперкувалду’.

Есть много других замечательных подходов. Например, событийные, процесс ориентированные...

Помните, мы обсуждали инструмент PLC Link? Он интегрирует CoDeSys в MATLAB Simulink с непосредственным выполнением в ПЛК и визуальной отладкой. Это было нужно для математически сложных задач, типа динамического управления лопастями генераторов. Тема получила развитие. Теперь в MATLAB появился PLC Coder. Жалко, нет случая попробовать.