Здравствуйте!
У меня часть программы пишется на SFC. Мне было бы удобно, чтобы один из шагов содержал в себе действие, написанное тоже на SFC. При этом данное действие (назовем это условно "пуск двигателя") имеет такую структуру, что выполняется за много циклов программы. То есть там свои задержки, свои события, которых ждем и так далее - полноценная многошаговая SFC програмка.
Возник вопрос:
Если известно точно, что действие "пуск двигателя" не выполняется за 1 цикл, то где его лучше разместить - как входное, выходное или связанное N-действие? По смыслу, когда "пуск двигателя" отработает, мне нужно ждать некоего сигнала готовности и переходить на следующий шаг "родительского" процесса.
Я прилепил картинку, не знаю, поможет ли. Здесь я для примера из Step2 огранизовал входное действие (тот самый "пуск двигателя), а в нем какая-то накрученная муть. Требуется, чтобы при активизации Step2 начинала работу эта муть - и работала себе по циклам процессора, пока не выполнит весь "пуск двигателя". А "папа" этого процесса, шаг Step2, как предполагается, следит за условием окончания (обозначил на рисунке "R") и при выполнении - передает активность шагу Step3.
Процесс же "пуск двигателя" стоит в ожидании. И в следующий раз при активности шага Step2 будет выполнено какое-то условие активизации "пуска двигателя" и действие начнет свою работу.
Я пробовал построить модель, но не хватает ума и усердия. Даже порождение альтернативной ветви вызывает у меня судороги С трудом нашел, как это сделать...
Думаю, а вдруг это все не правильно и так нельзя делать?