Лекция: Языки программирования и управление систем ЧПУ
В системах ЧПУ используются три языка:
· язык задач — кнопки, переключатели и регуляторы пульта оператора;
· язык заданий — стандартная система кодирования ISO-7bit управляющей программы;
· язык дисплея — сообщения, которые выдаются оператору (тексты, графики, цифры, символы и т.п.).
Язык задач пульта оператора и язык дисплея (человеко-машинный интерфейс) должны обеспечить запуск и останов системы, выбор режима работы, оперативное управление, отображение состояния процесса. Все клавиши должны иметь прямую или условную пометку, а также индикацию включения.
Язык заданий – это символы и построенные из них фразы, используемые для автоматического управления по программе. Символы имеют определенное значение (ГОСТ 20999-83), программа должна иметь название, а также содержать обозначение начала и конца. Структурно она делится на главы (:) и кадры (N).
Функции ЧПУ разделяются на стандартные, технологические, геометрические и знаков. Символы, буквы и цифры, которые образуют конкретную функцию, называются терминалами языка. Все терминалы делятся на шесть классов:
1. Стандартные функции (SF): G, M.
2. Цифры (DIGIT): 0..9.
3. Технологические функции (TECHNF): N, F, S, T, L, H, %, LF, / (N — номер кадра, F — функция подачи, S — функция скорости привода главного движения, T — функция позиции инструмента, % — начало программы, LF — конец кадра).
4. Геометрические функции (GEOMF): [X, Y, Z] — первичные координаты, [I, J, K] — координаты начала движения, [P,Q] — вторичные координаты, [U,V,W] — третичные координаты, [A,B,C] — угловые координаты.
5. Функции знака (DEL): +, — .
6. Функция параметра (PARAM) R, что используется для упрощения вычислений при программировании.
Отдельные фразы входного языка представляют собой команды управления. Однако их набор может быть противоречивым, неверным или неполным. С этой целью проводится синтаксический и семантический анализ.
Правила написания слов и предложений определяются грамматикой входного языка. В цифровых системах управления применяются автоматная и контекстно-свободная грамматика. Автоматная грамматика предусматривает жесткие правила написания программы. В контекстно-свободной грамматике допустима некоторая свобода в последовательности слов или их размерности. Например, функция подачи F может не содержать незначимых цифр и запятая может стоять на любом месте, например, F0,25; F1250; F1,2 и т.д.
Правила грамматики удобно представлять в виде синтаксических диаграмм, примеры которых приведены на рисунке 2.6.
Синтаксические диаграммы имеют вход (левая вертикаль) и выход (правая вертикаль). Между ними располагаются допустимые цепочки терминалов (в кружках) и состояний (в прямоугольниках). Синтаксические диаграммы показывают варианты представления функций. Например, в функции «Подача» должны быть терминал F, терминал запятая ( ) и одна, две или три цифры. Для выхода из процесса анализа необходима также команда SIMBLE.
Рисунок 2.6 — Пример синтаксической диаграммы
Переходы в новые состояния должны отличаться терминалами. Так, например, из состояния анализа терминала F есть два выхода: на ввод цифры или на ввод запятой.
Представим синтаксис слова «Подача» графом (рис. 2.7).
Рисунок 2.7 — Граф автомата для функции “Подача”
От графа перейдем к составлению правил автоматной грамматики, которые записываются в виде:
,
где – корень правила, нетерминал, который обозначает текущее состояние автомата; – терминал, один; – нетерминал, состояние, в которое переходит автомат; – сигнал {zi}, который генерируется автоматом в новом состоянии (не обязателен).
Для графа на рисунке 2.7 правила автоматной грамматики принимают следующий вид:
Составленные правила позволяют разработать программу автомата.
Сигналу z можно назначить различные значения, например, z=1 – ДОПУСТИТЬ; z=0 – ОТВЕРГНУТЬ.
Алгоритм управления приведен в управляющей таблице (табл. 2.1).
В управляющей таблице автомата строки описывают варианты его обращения в определенных состояниях, а столбцы — условия переходов с одного состояния в другое.
Правильность составления таблицы оценивается следующим образом:
1) количество правил равняется количеству заполненных клеток таблицы;
2) незаполненные клетки отвечают операции «ОТВЕРГНУТЬ»;
3) количество строк отвечает числу состояний, а количество столбцов — числу терминалов.
Таблица 2.1 — Алгоритм управления автоматом
Состояние | Терминал | ||
F | DIG | Команда SIMBLE | |
Заменить сдвинуть | |||
Заменить сдвинуть | Заменить a4 сдвинуть | ||
Заменить сдвинуть | Заменить сдвинуть | ||
Заменить сдвинуть | |||
Заменить сдвинуть, | |||
Заменить сдвинуть |