Языки программирования и управление систем ЧПУ
В системах ЧПУ используются три языка:
· язык задач - кнопки, переключатели и регуляторы пульта оператора;
· язык заданий - стандартная система кодирования 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 сдвинуть | |||
Заменить сдвинуть | Заменить сдвинуть | |||
Заменить сдвинуть | ||||
Заменить сдвинуть, | ||||
Заменить сдвинуть |