Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Монограф

Модератор: специалисты по PLC


Автор темы
leon78
завсегдатай
завсегдатай
Сообщения: 565
Зарегистрирован: 25 июл 2008, 09:06
Ф.И.О.: U.L.A.
Благодарил (а): 1 раз
Поблагодарили: 4 раза
Контактная информация:

Монограф

Сообщение leon78 » 13 апр 2010, 07:33

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

Думаю, не надо объяснять значение таких терминов, как граф, вершина (состояние), переход, условия перехода, действие. По английски: graph, state, transition, transition condition, action.

Прежде чем приступить к объяснению сущности монографа, приведу концепцию канонической формы графа. Термин также авторский, поэтому предлагайте свои идеи.

Какой граф является каноническим? Это граф, у которого:
1. В условиях переходов записаны исключительно входные сигналы, коими у ПЛК являются входные сигналы I.
2. В вершинах выполняются действия исключительно по включению/отключению выходных сигналов, коими у ПЛК являются выходные сигналы Q.
3. Промежуточные маркеры M используются только для хранения номера текущего состояния графа.

Зачем нужна каноническая форма графа?
1. Подумайте, что это за граф управления, который в условии перехода опрашивает состояние какого-либо выхода Q, который сам же устанавливает или сбрасывает??? Разве граф не может в зависимости от того, включил или выключил тот или иной выход, перейти в такое состояние, в котором опрашивать этот выход не потребуется?
2. Если граф включает какой-либо промежуточный бит, например, из области M, т.е. не относящийся к выходу, то он делает "засечку" на память для себя самого. Но ведь эти "засечки" можно делать и с помощью перехода в некоторое состояние, нахождение в котором будет означать включение того "левого" промежуточного бита.

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

ПРИМЕЧАНИЕ: На практике область М может оказаться как входной, так и выходной информацией по отношению к графу. Это справедливо в тех случаях, когда эта память используется для коммуникационного обмена данными с панелью оператора, преобразователем и другими девайсами. В этих случаях, эти биты нужно считать соответственно входными или выходными.

<Продолжение следует.>
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.

Вернуться в «F.A.Q. по структуре программ»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей