ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
- 65 -
Для вычисления условия может быть вызвана любая подпрограмма
в соответствии с синтаксисом: <имя подпрограммы>( );. Условие
будет равно TRUE, если возвращаемое значение программой не равно
нулю, и FALSE в противном случае. На рис.3.11 вызов подпрограммы
используется для вычисления условий перехода, обрамляющих шаг
40.
Динамические правила языка SFC.
В языке SFC можно выделить следующие динамические правила:
− выполнение перехода осуществляется, если он разрешен, и
соответствующее ему условие перехода имеет значение TRUE;
считается, что переход разрешен, когда все предшествующие ему
шаги, присоединенные к символу данного перехода, активны (в
противном случае переход запрещен);
− для указания переходов, которые должны выполняться
одновременно, можно использовать двойную дивергенцию; если такие
переходы показаны на схеме отдельно, то для задания условий
перехода можно использовать состояние активности предшествующих
шагов (GSnnn.x);
− выполнение перехода немедленно приводит к деактивации
непосредственно предшествующих ему шагов и активации шагов,
непосредственно следующих за ним;
− если во время выполнения шаг одновременно активируется и
переводится в пассивное состояние, то приоритет отдается активации.
Иерархия программ на языке SFC и SFC-действия.
В системе ISaGRAF каждая программа на языке SFC может
управлять (запускать, уничтожать, приостанавливать) другими
программами на том же языке, которые называются дочерними
программами той программы, которая ими управляет. SFC-программы
объединяются в иерархическое дерево. К основным правилам этой
иерархической структуры относятся следующие:
− программы на языке SFC, не имеющие родительской
программы, называются главными программами;
− главные программы на языке SFC активируются системой при
запуске прикладной программы;
− программа может иметь несколько дочерних программ;
− дочерняя программа не может иметь более одной родительской
программы и управляется только родительской программой;