ВходНаше всё Теги codebook PARTS Поиск Опросы Закон Воскресенье
14 августа
1210694 Топик полностью
_Илья (21.05.2022 18:32, просмотров: 136) ответил symbions на 1)ТО есть на языке ST
ПЛК нигде не остаётся на следующий цикл. 

Он каждый новый цикл (точно не помню, но примерно равный 1 мс) просто проходит PLC_PRG от начала до конца и всё. Что там написано, он выполняет. Если надо, чтобы какую-либо часть кода или процедуру он не выполнял в конкретном цикле, надо на входе в эту процедуру поставить условие, чтобы он туда не заходил, ну, или прописать её выполнение в таймере по времени. В ПЛК невозможно задать останов выполнения главного цикла где-либо на время большее чем 1 мс (ну или сколько там, с учётом служебного времени на опрос входов, обмен по интерфейсам, выставление выходов и т.д.), так как это будет уже авария. При этом ПЛК "подумает", что программа зависла и сработает "собачий таймер", сбрасывающий цикл. Между циклами обмен данными идёт только через переменные.