Добрый день.
подскажите пожалуйста есть ли в языке St оператор перехода на метку?
если нет каким образом можно организовать переход?
заранее спасибо.
Добрый день.
подскажите пожалуйста есть ли в языке St оператор перехода на метку?
если нет каким образом можно организовать переход?
заранее спасибо.
Посмотри в помощи на кодесис про это:
1) If … then … else…end_if
2) Case ….. of ….. else …. end_case
на мой взгляд этого вполне достаточно
P. S. удачи :-)
врят ли поможет.
мне нужно перейти в конец программы, попутно проверить несколько условий и, возможно, перейти ещй куда нибудь внутри программы.
Идеология не предусматривает использование GOTO-подобного стиля. Разбейте свой алгоритм на маленькие функции и вызывайте их в SFC или его аналоге на ST (case) по состояниям. Любой сложности алгоритм получается удобочитаемым и понятным (особенно через год-другой )
Ну примерно так
1) выход из любого места на начало - return
2) в начале ставим case переменная_состояния
3) Внути case другие case не ставьте - глючит. Код разбиваем на POU и не стараемся написать листинг на 50 страниц.
Я думаю это поможет
вполне может, но возвращаться будтет в след после вызова строку.
И снова - меня еще на первом курсе хорошие люди отучили от goto. Даже доказывал теорему, что используя if, и while можно организовать любой алгоритм.
Ценой глючной программы на контроолере может стать разморозка жилого здания или поломанный станок... или... Вам этого надо?
Четкое понимание того, что делается в программе залог отсутствия глюков.
если у вас такой сложный алгоритм работы то для начала «plc_prg» хорошо бы было сделать на «sfc» (что-то похожее на блок схему) там всю свою программу разобьёте на куски и правильно уложите в шаги Sfc-программы это заметно упростит алгоритм. внутренности шагов тоже можно сделать Sfc языком программирования. и в финале когда упрощать таким образом не получается начинаем всю программу разбивать на функции, функциональные блоки и просто программы. затем все повторяющиеся куски программы оформляем отдельными компонентами. и только после этого садится писать саму программу и последовательность выполнения тех или иных действий.
P. S. мне аналогичный подход очень помогает :-)