Цитата:
Сообщение от младшой
У вас в конце концов переменная С однозначно определяет состояние Z.
Следовательно, А и В вообще не имеют значения и код с ними бесполезен.
|
Цитата:
Сообщение от New
Угу. Я потому выше и спросил, что должно то получиться.
|
Дело в том, что я решил реализовать алгоритм на SFC (Графсет, как говорят французы), а этого языка у Segnetics нет. Я вам привёл только короткий фрагмент. Могу теперь его расширить.
SFC.png
Рассмотрим состояние
А1 (рисовать неохота, буду теперь писать), которое реализовано RS-триггером. Оно устанавливается (становится активным) при переходе
w:
IF A2 AND w THEN A1:= TRUE;
А сбрасывается (становится неактивным) при переходе
x. (переход
x будет описан аналогично для триггера
B1, поэтому установка
B1 это условие сброса
A1):
IF B1 THEN A1:= FALSE;
Но для состояния
A2 есть только сброс и нет установки (т.к. нет перехода в состояние
A2):
IF A1 THEN A2:= FALSE;
Что же делать? Мы дополняем систему переходов системами вложенных состояний:
A2 = B1 OR B2;
Вот теперь активация любого вложенного состояния (
B1,
B2) (по любой причине) приведёт к активации родителя
A2. Если же все вложенные состояния неактивны, то и родитель A2 тоже становится неактивным.
Резюме. Есть условия установки состояний, есть условия сброса и есть условия вложенности. Вот их и надо все реализовать.