Я тут частенько писал про параметрическое программирование. Примеры есть в моих постах, а вот шпаргалка под рукой никогда не помешает. Даже мне.
MOD Оператор используется для деления двух чисел и возвращает только остаток от деления. Любые числа с плавающей запятой предварительно округляются до целого.
Синтаксис: #100=[37 MOD 30] Переменная #100 будет содержать число 7.
OR Логическое ИЛИ. Оператор используется для проверки того, выполняется ли одно из двух условий. Если значение левого операнда истинно, или значение правого операнда истинно, или оба значения истинны, то логический оператор ИЛИ возвращает TRUE. В противном случае он вернет FALSE.
XOR Логическая операция исключающее ИЛИ (ИЛИ-НЕ) выполняется с двумя битами (A и B). Результат выполнения логической операции XOR будет равен 1 (единице), если один из битов A или B равен 1 (единице), во всех остальных случаях, результат равен 0 (нулю).
Синтаксис: #C=[#A XOR #B]
AND Логическая операция И. Всё выражение считается истинным, только если истинен каждый операнд — каждое из составных выражений. Иными словами, AND, означает «и то, и другое».
Синтаксис: #C=[#A AND #B]
Логические или условные операторы
GE ≥ — Больше либо равно.
LE ≤ — Меньше либо равно.
Тригонометрические функции
ATAN Функция котангенса (арктангенса).
ACOS Функция арккосинуса.
ROUND Функция округляет число в большую сторону, если следующая цифра после запятой больше или равна 5. В противном случае число округляется в меньшую сторону.
FIX Функция округляет число в меньшую сторону.
FUP Функция округляет число в большую сторону.
ABS Функция, возвращающая абсолютное значение числа.
LN Функция возвращает натуральный логарифм вещественного числа Х. Число Х должно быть положительным — иначе случится ошибка времени выполнения.
EXP Функция возвращает экспоненциальное значение параметра с плавающей запятой.
Условное выполнение одиночной макрокоманды
IF «Если» — Оператор условия позволяет выполнять различные действия с условием. После оператора IF указывается некоторое выражение. Если это выражение оказывается истинным (true), то выполняется команда (например, команда безусловного перехода), находящаяся в одном кадре с IF. Если выражение оказывается ложным (false), то команда, находящаяся в одном кадре с IF, не выполняется, а управление передается следующему кадру.
Синтаксис: IF [#A GT #B] GOTO #C;
THEN «Тогда» — Оператор выполнения определённой команды только при условии истинности (true) некоторого логического выражения в конструкции IF.
Синтаксис: IF [#A GT #B] THEN #A=#C;
WHILE Цикл с условным выражением, выполняется до тех пор, пока истинно (true) указанное условие. Если условие сразу ложно (false), цикл даже не начнёт свою работу и будет полностью пропущен, а управление перейдёт к кадру размещённому за END n
WHILE [Условное выражение>] DO n
Где n идентификационный номер, может быть 1,2 или 3. Если используется номер, кроме 1, 2 и 3, то возникает сигнал тревоги P/S ном. 126.
Идентификационные номера (1-3) в цикле DO-END могут использоваться неограниченное количество раз. Тем не менее, обратите внимание на то, что если программа включает пересекающиеся циклы повтора (перекрывающиеся диапазоны DO), то возникает сигнал тревоги P/S ном. 124.
Идентификационные номера (1-3) могут использоваться неограниченное количество раз.
Диапазоны DO не могут перекрещиваться.
Циклы DO могут быть вложены до трех уровней.
Управление может переносится за пределы цикла.
Нельзя выполнить переходы к позиции внутри цикла.
Если выполняется переход к номеру последовательности, заданный оператором перехода GOTO, то осуществляется поиск номера последовательности. По этой причине обработка данных в обратном направлении занимает больше времени, чем обработка данных в прямом направлении. Использование оператора цикла WHILE для выполнения повторов сокращает время на обработку данных.
END Конец цикла. Если выражение в конструкции WHILE не истинно, то управление передается кадру, следующему за END
GOTO Происходит переход к номеру последовательности n. Если задан номер последовательности, не входящий в диапазон от 1 до 99999, то возникает сигнал тревоги P/S ном. 128. Для ввода номера последовательности также можно использовать выражение.
GOTO n; – Безусловный переход к кадру n, где n: номер последовательности (от 1 до 99999);
GOTO #10; — Вычисляемый переход к кадру, установленному переменной #10.
#0 Эта переменная всегда нулевая. Этой переменной нельзя присвоить никакого значения.
#1 – #33 Локальные переменные могут использоваться только внутри макропрограммы и содержат такие данные, как, например, результаты операций. При отключении питания локальные переменные обнуляются. При вызове макропрограммы локальным переменным присваиваются аргументы.
#500 – #999 Общие переменные могут совместно использоваться в различных макропрограммах. При отключении питания переменные от #100 до #199 обнуляются. В переменных от #500 до #999 данные хранятся даже при отключении питания.
#1000 – #99999 Системные переменные используются для чтения и записи различной системной информации – данных о позиции инструмента, величинах компенсации, времени и др.
переменных Локальные и общие переменные могут иметь значение 0 или значение в следующих диапазонах: