3.27 Ветвление программы.
Внутри УП можно осуществлять логические переходы к соответствующим меткам. Переходы могут быть условные и безусловные.
При ветвлении программ используются следующие символы:
> больше;
< меньше;
= равно;
‘> больше и равно;
‘< меньше и равно;
‘= не равно;
Конструкция безусловного перехода имеет следующий вид:
БП_Метка , где _ пробел (может быть опущен);
БП ключевое слово (безусловный переход)
Метка место в УП, к которому выполняется переход
В качестве “Метка” может быть:
1) номер кадра ( БП N=25 ;или БП N=N+4;)
2) последовательность любых символов (заключенная в круглые скобки). Число символов не больше 6:
БП_KONEC
. . .
N121(KONEC)
Условный переход
Конструкция условного перехода имеет следующий вид:
Если_АВ1{ >
< = ‘>
‘< ‘= }АВ2_TO_Метка
Где:
_ пробел (может быть отпущен);
Если ключевое слово (переход по условию)
{ > < = ‘> ‘< ‘= } символы условных переходов
АВ1 , АВ2 арифметические выражения
TO ключевое слово
Метка метка
Конструкция кадра с переходом (A) имеет вид:
Nxxx (1)
(информация
предшествующая переходу) (2)
(конструкция
условного перехода) (3)
ПС (4)
(Информация,
Если условие не выполнено) (5)
ПС
(6)
Конструкция
кадра с меткой (R) имеет вид:
Nxxx (7)
(информация) (8)
(метка) (9)
(Информация) (10)
ПС (11)
Метка оформляется в виде имени, заключенного в круглые скобки и может быть расположена как в начале кадра, так и в середине его. В качестве метки не допускается использование следующих символов : “X, Z, I, K, P, (И, К - русские), S, N, F, C, H”, а также комбинации символов: последовательность цифр, “N=”, “O” и последовательность цифр, “R” и последовательность цифр. Для безусловного перехода позиции (5, 6) опускаются. Позиции (2, 5) являются не обязательными.
При невыполнении условия перехода информации из позиции (2, 5) для отработки объединяются, и рассматривается как единый кадр. При этом не допускается наличие одинаковых адресов в позиции 2 и 5.
Взаимное расположение кадров (A) и (R) внутри структурной единицы УП не имеет значения.
Примечания:
1) Если в кадре имеет место позиция (2) и условный переход осуществляется по метке, которая установлена между символами “ПС” и “Начало кадра”, то информация, соответствующая позиции (2), утрачивается;
2) При реализации кадра с условным переходом по метке, расположенной внутри кадра (условие выполняется) информация позиций (2, 10) объединяется для отработки;
3) При реализации кадра с условным переходом по номеру кадра (условие выполняется), сначала отрабатывается информация из позиции (2), а затем информация кадра по указанному номеру;
4) Если в позиции (2) имеет место информация по “X” и “Z” (геометрия) и условный переход использует сравнение со значениями “X” и “Z”, то осуществляется сравнение с той информацией по данным координатам, которая справедлива до позиции (1) - начало кадра.
Все виды переходов допустимы только в пределах рассматриваемой структурной единицы; для УП зона поиска по указанному переходу выполняется по всей области программы и входящих в нее подпрограмм; для подпрограммы и циклов - только внутри данной подпрограммы (цикла). Если заданная в кадре информация не найдена, формируется ошибка с кодом “?28”.
Пример программирования с
использованием ветвления программы:
%
N1
T01.01 M6
N2
G0 Z0
N3
S1900 M4 M41
N4
R1=28000
N5
X=R1
N6
G1 Z-23000 F300
N7
Z-47000 F2000 G9
N8
Z-68000 F300
N9
G0 X29000
N10
70
N11
R1=R1-1000
N12 ЕСЛИ R1 ‘> 25200 ТО N=5
N13
X25200
N14
G1 Z-23000 F300
N15
Z-47000 F2000 G9
N16
Z-68000 F300
N17
G0 X26000
N18
Z0
N19
M2