Codesys LD: как перейти от процесса к другому процессу

Я новичок в программировании Codesys Ladder. Мы конвертируем наше приложение Ladder в Codesys LD. В нашем приложении есть несколько процессов. Каждый процесс обрабатывает разные предметы. Каждый процесс активируется элементом Jump To Subprocess из другого процесса. Например: MainProcess: Rung1: если реле Open->Jump to Process1; Если реле закрыто - перейти к процессу 2, процессу 1{} процессу 2{}.

Я ищу способ реализовать то же самое (переход от процесса к другому процессу) с помощью Syscode LD.

Спасибо


person user12585338    schedule 10.12.2020    source источник


Ответы (1)


Я бы предложил создать методы для process1 и process2.

Затем вы можете просто использовать метод process1 вызова звена NC ретрансляции и метод process2 вызова звена NO ретранслятора.

MainProcess имеет подобъекты:

Метод Процесс1

Метод Процесс2

Затем вы можете сделать следующее без каких-либо «прыжков»

Реле |—-|/|—-Процесс1—-|

Реле |—-| |—-Процесс2—-|

Вы также можете заменить вызовы объектов подпроцессов вызовами отдельных программ или методов других программ:

Реле |—-|/|—-DifferentProg.Process—-|

Реле |—-| |—-ДругойПрог.Процесс—-|

Тем не менее, вы можете использовать команду JUMP to label для достижения желаемого (если ваш переход находится в той же программе). Ключевым моментом является добавление метки к цепочке, щелкнув область в левом верхнем углу ступени (есть строка для комментария и строка для метки). Проверьте параметры LD, чтобы убедиться, что ваш редактор показывает эти области.

Просто не забудьте поставить прыжок в конец и завершить этот стиль, иначе процесс 1 перейдет прямо в процесс 2!

person Scott    schedule 26.01.2021