Основы программирования токарных станков с чпу. Основы программирования чпу

Одним из самых интересных и эффективных методов программирования обработки является параметрическое программирование. Удивительно, но большинство технологов-программистов хоть и слышали об этом методе, но совершенно не умеют его использовать. В этом разделе вы познакомитесь с теорией параметрического программирования и коснетесь основ макроязыка системы ЧПУ современного станка.

Большинство станочных систем ЧПУ имеют в своем распоряжении специальный язык для параметрического программирования (макропрограммирования). Например, в СЧПУ Fanuc этот язык называется Macro В. Если вы хоть немного знакомы с языком программирования Бейсик (Basic), то вы без труда разберетесь и с Macro В. Команды и функции именно этого языка мы рассмотрим подробно. В обычной управляющей программе вы указываете различные G-коды, а также направления и величины перемещений при помощи числовых значений. Например, G10 или Х100. Однако СЧПУ станка может делать то же самое при помощи переменных.

Символом переменной в Macro В является знак #. Например, в программе можно указать следующие выражения:


#1=100
#2=200
#3=#1+#2

Это означает, что переменной #1 присваивается значение 100, а переменной #2 – значение 200. Переменная #3 будет являться результатом суммы переменной #1 и переменной #2. С таким же успехом можно записать и G-код:


#25=1
G#25

Переменной #1 присвоено значение 1. Тогда вторая строка по своей сути будет обозначать код линейной интерполяции G1. С переменными можно производить различные арифметические и логические операции, что позволяет создавать «умные» программы обработки или различные станочные циклы.

В памяти системы ЧПУ существует область, в которой хранятся значения переменных. Вы можете заглянуть в эту область, если найдете раздел памяти СЧПУ, который обычно называется MACRO или VARIABLES. Присваивать значения переменным можно не только внутри программы, но и непосредственно – вводя значения в регистры этой памяти. Приведу несколько примеров. Можно составить такую программу:

#1=25
#2=30
#3=#2+#1

В этом случае значения присваиваются переменным внутри программы. Чтобы в будущем изменить числовые значения переменных #1 и #2, придется отредактировать программу.

Можно реализовать более удобный вариант, который позволит изменять значения переменных в любой момент, не прибегая к изменению самой программы:

Как видите, переменным #1 и #2 в программе не присвоено никаких значений. Оператор станка может войти в область переменных MACRO и ввести любое числовое значение для любой переменной.

Все переменные системы ЧПУ можно условно разделить на 4 типа:

  • нулевые;
  • локальные;
  • общие;
  • системные.

Локальные переменные могут быть использованы внутри макросов для хранения данных. При выключении электропитания локальные переменные обнуляются. У большинства станков с СЧПУ Fanuc нулевой серии локальными являются переменные с номерами от 1 до 33.

Общие переменные могут работать внутри различных параметрических программ и макросов. При выключении электропитания некоторые общие переменные обнуляются, а некоторые сохраняют свои значения. У большинства станков с СЧПУ Fanuc нулевой серии общими являются переменные с номерами от 100 до 999.

Системные переменные используются для чтения и записи различной системной информации – данных о позиции инструмента, величинах компенсации, времени и др. Номера системных переменных для Fanuc нулевой серии начинаются с 1000.

Нулевые переменные всегда равны нулю.

Для выполнения арифметических и логических операций язык Macro В предоставляет набор команд и операторов.

Таблица 10.1. Основные арифметические и логические команды

Для управления переменными и для выполнения различных логических операций служат макрокоманды. Макрокоманды языка Macro В похожи на команды Бейсика.

Команда безусловного перехода GOTO предназначена для передачи управления определенному кадру программы. Формат команды следующий:

  • GOTO N – безусловный переход к кадру N;
  • GOTO #A – безусловный переход к кадру, установленному переменной #A.

Пример:

N10 G01 X100
N20 G01 X-100
N30 GOTO 10

После выполнения кадра N30 система ЧПУ переходит к кадру N10. Затем снова работает с кадрами N20 и N30 – получается бесконечный цикл.

Команда условия IF позволяет выполнять различные действия с условием. После IF указывается некоторое выражение. Если это выражение оказывается справедливым, то выполняется команда (например, команда безусловного перехода), находящаяся в кадре с IF. Если выражение оказывается несправедливым, то команда, находящаяся в кадре с IF, не выполняется, а управление передается следующему кадру.

Формат команды следующий:

IF [#a GT #b] GOTO N

Пример:

#1=100
#2=80
N10 G01 X200
N20 IF [#1 GT #2] GOTO 40
N30 G01 X300
N40 M30

В начале программного примера переменным #1 и #2 присваиваются значения 100 и 80 соответственно. В кадре N20 происходит проверка условия. Если значение переменной #1 больше значения переменной #2, то выполняется команда перехода GOTO к кадру окончания программы N40. В нашем случае выражение считается справедливым, так как 100 больше, чем 80. В результате после выполнения кадра N10 происходит переход к кадру N40, то есть кадр N30 не выполняется.

В этой же программе можно изменить значения переменных:

#1=100
#2=120
N10 G01 Х200
N20 IF [#1 GT #2] GOTO 40
N30 G01 Х300
N40M30

Во втором случае условие в кадре N20 не будет справедливым, так как 100 не больше, чем 120. В результате после выполнения кадра N10 не происходит переход к кадру N40, то есть кадр N30 выполняется как обычно.

В выражении [#1 GT #2] используются операторы сравнения. В табл. 10.2 сведены операторы для сравнения переменных языка Macro В.

Таблица 10.2. Операторы сравнения

Команда WHILE позволяет повторять различные действия с условием. Пока указанное выражение считается справедливым, происходит выполнение части программы, ограниченной командами DO и END. Если выражение не справедливо, то управление передается кадру, следующему за END.

% О1000 #1=0 #2=1 WHILE [#2 LE 10] DO 1; #1=#1+#2 #2=#2+1 END 1 M30 %

Макропрограммой называется программа, которая находится в памяти СЧПУ и содержит различные макрокоманды. Макропрограмму можно вызывать из обычной программы с помощью G-кода, аналогично постоянным циклам. При вызове макропрограммы существует возможность прямой передачи значений для переменных макропрограммы.

Команда G65 предназначена для немодального вызова макропрограммы. Формат для этой команды следующий:

где G65 – команда вызова макропрограммы; Р_ – номер вызываемой макропрограммы; L_ – число повторений макропрограммы; А_ и В_ – адреса и значения локальных переменных.

G65 Р9010 L2 А121 В303 – макропрограмма 9010 вызывается 2 раза, соответствующим локальным переменным присваиваются значения 121 и 303.

Необходимо знать, какой локальной переменной присваивается значение с помощью того или иного адреса. Например, для СЧПУ Fanuc 0-MD будут справедливы следующие зависимости:

Таблица 10.3. Соответствие адресов локальным переменным

Адрес Переменная
A
B
C
D
E
F
H
I
J
K
M
Q
R
S
T
U
V
W
X
Y
Z
#1
#2
#3
#7
#8
#9
#11
#4
#5
#6
#13
#17
#18
#19
#20
#21
#22
#23
#24
#25
#26

Теперь можно приступить к созданию несложной, но очень полезной параметрической программы. Довольно часто возникает необходимость в обработке нескольких отверстий, находящихся на некотором радиусе и следующих через определенный угол (рис. 10.7). Чтобы освободить программиста от утомительного переделывания программы в случае изменения радиуса, угла или количества отверстий, создадим такую программу обработки, которая позволит оператору вводить значения радиуса и угла и выполнять операцию сверления по окружности с любыми размерами.

Для сверления отверстий будем использовать стандартный цикл G81. Угол, на котором находятся отверстия, отсчитывается от оси X против часовой стрелки (положительный угол).

Необходимо задать:

  • радиус окружности, на которой находятся отверстия;
  • начальный угол (угол, на котором находится первое отверстие);
  • относительный угол (угол, через который следуют остальные отверстия);
  • общее количество отверстий.

Все эти данные должны быть представлены в параметрическом виде, то есть при помощи переменных.

Пусть
#100= радиус окружности, на которой находятся отверстия;
#101= начальный угол;
#102= относительный угол;
#103= общее количество отверстий.

Рис. 10.7. Создадим параметрическую программу для обработки детали с неизвестными размерами

Для того чтобы создать параметрическую программу, необходимо придумать алгоритм, позволяющий изменять поведение программы обработки в зависимости от значений указанных переменных. В нашем случае основой УП является стандартный цикл сверления G81. Остается найти закон, по которому описываются координаты центров отверстий при любых первоначальных значениях радиуса, углов и произвольном количестве отверстий.

%
О2000
N10 G21 G90 G80 G54 G40 G49 G00
N20 G17

Первые кадры программы будут стандартными. Это номер программы, строка безопасности и код G17 выбора плоскости XY.

Так как координаты центров отверстий задаются с помощью радиуса и угла, то есть в полярной системе координат, то в кадре N30 укажем код G16.

N40 Т1 М6
N45 G43 HI Z100
N50 S1000 M03
#120=0

В кадр N60 поставим цикл сверления G81 и координаты центра первого отверстия. Как вы помните, в случае работы с полярными координатами X обозначает радиус, a Y определяет угол. Значения радиуса и начального угла известны, они устанавливаются переменными #100 (радиус) и #101 (начальный угол). Вводится некоторая переменная #120 с нулевым значением. Эта переменная представляет собой счетчик. Чуть позже вы поймете назначение данной переменной.

N60 G98 G81 Х#100 Y#101 Z-5 R0.5 F50

Переменная #103 отвечает за общее количество отверстий. Так как первое отверстие мы уже просверлили, то уменьшим #103 на 1. Таким образом, кадр N70 обеспечивает подсчет оставшихся отверстий. А кадр N75 увеличивает значение переменной #120 на 1.

N70 #103=#103-1
N75 #120=#120+1

Если количество отверстий, которые осталось просверлить, равно нулю, то следует отменить цикл сверления, выключить обороты шпинделя и завершить программу.

N80 IF [#103 EQ 0] GOTO 120

В кадре N80 происходит сравнение значения переменной #103 с нулем. Если переменная #103 равна нулю, то управление передается кадру N120 в конце программы. Если же переменная #103 не равна нулю, то выполняется следующий кадр.

N90 #130=#102*#120
N95#110=#101+#130

Кадр N90 предназначен для определения углового приращения. Новая переменная #110 является суммой #101 (начального угла) и #130 (углового приращения). Кадр N95 обеспечивает расчет угла последующего отверстия.

Затем указывается новый угол для сверления, и управление передается кадру N70.

N100 Y#110
N110 GOTO 70

При помощи кадра N70 образуется замкнутый цикл, который обеспечивает расчет координат центров отверстий и сверление до тех пор, пока значение переменной #103 не будет равно нулю. Если значение #103 станет равным нулю, то управление будет передано кадру N120.

N120 G80
N125 М05
N130 G15
N140 М30
%

Заключительные кадры программы предназначены для отмены постоянного цикла (G80), выключения оборотов шпинделя (М05), выключения режима полярных координат (G15) и завершения программы (М30).

% О2000 N10 G21 G90 G80 G54 G40 G49 G00 N20 G17 N30 G16 N40 T1 M6 N45 G43 H1 Z100 N50 S1000 M03 #120=0 N60 G98 G81 X#100 Y#101 Z-5 R0.5 F50 N70 #103=#103-1 N75 #120=#120+1 N80 IF [#103 EQ 0] GOTO 120 N90 #130=#102*#120 N95 #110=#101+#130 N100 Y#110 N110 GOTO 70 N120 G80 N125 M05 N130 G15 N140 M30 %

Любая параметрическая программа должна быть тщательно проверена, прежде чем она попадет на станок. Скорее всего, у вас не получится проверить такую программу при помощи редактора УП и бэкплота, так как в ней присутствуют переменные. Самая надежная проверка в данном случае – это подстановка значений для входных переменных и «раскручивание» алгоритма уже с конкретными числами.

Предположим, что оператор станка получил чертеж детали (рис. 10.8) для обработки отверстий. Он должен установить нулевую точку G54 в центр детали, замерить длину сверла и установить его в шпиндель. Затем следует войти в область переменных MACRO и ввести следующие числовые значения:

№ переменной Значение

100
101
102
103
104
105

12.5
45
20
4
0
0

Рис. 10.8. Вместо переменных на чертеже стоят конкретные размеры и известно количество отверстий

Для проверки созданной параметрической программы достаточно подставить конкретные значения переменных и, «прокручивая» алгоритм, получить обычную программу.

Эту же программу можно записать и в привычном виде:

% О2000 N10 G21 G90 G80 G54 G40 G49 G00 N20 G17 N30 G16 N40 T1 M6 N45 G43 H1 Z100 N50 S1000 M03 N60 G98 G81 X12.5 Y45 Z-5 R0.5 F50 N100 Y65 N100 Y85 N100 Y105 N120 G80 N125 M05 N130 G15 N140 M30 %

Теперь попробуем создать макропрограмму, которая будет функционировать аналогично постоянному циклу. Для обработки детали, показанной на рис. 10.8, оператор станка должен ввести и отработать следующую команду:

G65 P9010 I12.5 A45 B20 H4

При этом наша параметрическая программа (с новым номером О9010) уже должна находиться в памяти СЧПУ. Как правило, макропрограммы имеют номера с 9000 и выше, недоступны для свободного редактирования. Команда G65 предназначена для немодального вызова макропрограммы. При этом адреса I, А, В, Н в кадре с G65 передают свои числовые значения определенным локальным переменным. Для нахождения соответствия адресов локальным переменным можно воспользоваться табл. 10.3.

Можно подстроить переменные в нашей программе, вставив следующие строки в программу:

#100=#4
#101=#1
#102=#2
#103=#11

В результате получаем макропрограмму:

% О9010 #100=#4 #101=#1 #102=#2 #103=#11 N10 G21 G90 G80 G54 G40 G49 G00 N20 G17 N30 G16 N40 T1 M6 N45 G43 H1 Z100 N50 S1000 M03 #120=0 N60 G98 G81 X#100 Y#101 Z-5 R0.5 F50 N70 #103=#103-1 N75 #120=#120+1 N80 IF [#103 EQ 0] GOTO 120 N90 #130=#102*#120 N95 #110=#101+#130 N100 Y#110 N110 GOTO 70 N120 G80 N125 M05 N130 G15 N140 M30 %

Хотя созданная нами параметрическая программа и не является оптимальной, однако она наглядно демонстрирует широкие возможности этого метода по созданию эффективных УП и различных станочных циклов.

Введение

1. Основные понятия и определения

1.1 Интерполятор

1.2 Линейный интерполятор

1.3 Круговой интерполятор

2. Структура программы

3. Правила программирования для устройств четвертого поколения

Заключение

Литература

Введение

В настоящее время станок с числовым программным управлением (ЧПУ) является основным производственным модулем современного производства. Станки с ЧПУ используются как для автоматизации мелкосерийного или штучного производства, так и для производства больших серий. Ведущие фирмы постоянно совершенствуют и расширяют возможность систем ЧПУ, систем подготовки данных и проектирования. Одна из концепций этой стратегии неразрывно связана с совершенствованием регулируемого электропривода, придания ему новых качеств за счет цифрового управления.

Учитывая разнообразного потребителя, спрос на самые простые, маленькие станки, кроме многокоординатных ЧПУ предлагаются семейства ЧПУ для простых станков (2 оси + шпиндель для токарных и 3 оси + шпиндель для фрезерных станков). В качестве приводов могут быть использованы как шаговые двигатели, так и сервоприводы с аналоговым интерфейсом. Значительное внимание уделяется вопросам модернизации систем ЧПУ старого поколения и создания систем передачи данных. Современные УЧПУ разрабатываются с учетом их работы в гибком автоматизированном производстве (ГПС) и имеют разнообразный интерфейс для создания локальных сетей. Программное обеспечение их существенно расширило возможности технолога и оператора станка. Все шире в алгоритмах интерполяции используются сплайны и полиномы. Эти функции позволяют создавать плавные непрерывные кривые. Использование сплайнов в обработке позволяет сократить управляющую программу, улучшить динамику движения приводов, повысить качество обрабатываемых поверхностей, отказаться от ручной доводки пресс-форм. Хотя за последние годы язык программирования для УЧПУ претерпел серьезные изменения, однако остается преемственность программного обеспечения в виде набора базовых функций. Большинство программ, написанных для старых моделей УЧПУ, работают и с новыми моделями при минимальных переделках.

1. Основные понятия и определения

Системы числового программного управления (СЧПУ) - это совокупность функционально взаимосвязанных технических и программных средств, предназначенных для управления станками в автоматическом режиме. К техническим средствам относятся станок, устройства подготовки управляющих программ, устройства управления станком, устройства размерной настройки режущего инструмента и т.д. К программным средствам относятся инструкции, методики, техническое и функциональное программирование и т.д.

Программа управления - это группа команд, составленных на языке данной системы управления и предназначенных для управления станком в автоматическом режиме. Числовое программное управление базируется на программе, в которой команды выражены в виде чисел.

Устройство числового программного управления (УЧПУ) - это часть системы числового программного управления, управляющее работой станка по командам, поступающим из управляющей программы.

УЧПУ выполняют две основные функции:

1. формирование траектории движения режущего инструмента;

2. управление автоматикой станка.

В настоящее время в промышленности используются два вида устройств ЧПУ.

1. УЧПУ четвертого поколения типа NC (Numerical Control – цифровое управление). УЧПУ типа NC состоят из блоков, каждый из которых решает лишь одну конкретную задачу общей программы управления. Логика работы этих блоков реализуется за счет соответствующего построения их электрических схем.

2. УЧПУ пятого поколения типа CNC (ComputerNumericalControl - компьютерное цифровое управление).

УЧПУ типа CNC базируются на работе мини ЭВМ, в которой логика работы задается программным методом. Одно и то же УЧПУ с мини ЭВМ может реализовывать различные функции управления за счет изменения программы управления работой мини ЭВМ.

1.1 Интерполятор

Интерполятор - устройство, на вход которого кадр за кадром подается информация в виде цифровых кодов, а на выходе выдается информация для каждой координаты в виде унитарного кода, т.е. последовательности импульсов.

Решение задачи контурного управления разбивается обычно на этапы:

·подготовка исходной информации о требуемой траектории, которая включает аппроксимацию траектории заданным набором

·ввод информации в систему программного управления;

·расчет заданных значений координат, расположенных на траектории движения, с использованием выбранного метода интерполяции;

·расчет числа импульсов по каждой из координат и выдача управляющих воздействий на исполнительные приводы с требуемой частотой, которая определяет контурную скорость движения по каждой из координат.

Интерполяторы по способу реализации подразделяются на:

·аппаратные;

·программные.

По виду интерполируемой траектории движения интерполяторы делятся на:

·линейные;

·нелинейные (второго порядка - круговые, параболические, n-порядка).

В основном в системах ЧПУ применяются линейные и круговые интерполяторы, т.к. до 90 % траекторий могут быть с достаточной степенью точности представлены совокупностью отрезков прямых и дуг окружности.

Существуют различные алгоритмы интерполяции реального времени, которые условно можно разделить на две группы:

·алгоритмы единичных приращений (метод оценочной функции, метод цифро-дифференциальных анализаторов);

·алгоритмы равных времен (метод цифрового интегрирования, прогноза и коррекции, итерационно-табличные методы).

Во-первых, определяются моменты времени, необходимые для выдачи единичных приращений по одной или нескольким координатам.

Во-вторых рассчитываются координаты точек траектории, через определенные и равные промежутки времени, по истечении которых выдается требуемое количество импульсов на привода исполнительного механизма.

Практически интерполяцию организуют следующим образом. В результате очередного вычислительного цикла, выполняемого с максимально высокой скоростью в машинном масштабе времени, определяют в какие приводы подачи должны быть выданы дискреты на текущем этапе оперативного управления. Результат сохраняют в буфере, который опрашивают с частотой, соответствующей скорости подачи для ведущей координаты. Таким образом, расчеты машинного масштаба привязывают к реальному времени.

На рис. 1.1 показана типичная структурная схема устройства числового программного управления типа 2С-42-65.

Устройство является контурно-позиционным со свободным программированием алгоритмов. Количество управляемых координат - до 8. Одновременное управление при линейной интерполяции обеспечивается по 4-м координатам, а при круговой интерполяции - по 2-м координатам. Одноплатная микро ЭВМ МС 12.02 реализована на базе процессора 1801ВМ2. Обмен информацией между микро ЭВМ и внешними устройствами осуществляется по каналу ЭВМ типа «Общая шина». Для увеличения нагрузочной способности используется расширитель канала (РК).

Рисунок 1.1 – Структурная схема устройства числового программного управления типа 2С-42-65

Конструктивно ЧПУ содержит 2 корзины. Одна из них предназначена для установки блоков общесистемного пользования, а вторая предназначена для установки специальных блоков для управления станком. На станочной магистрали находятся блоки входных и блоки выходных сигналов, с помощью которых реализуется программная реализация задач логического управления. Формирование аналоговых сигналов управления приводами подач и главного движения осуществляется через цифроаналоговые преобразователи (ЦАП) - группа «Привод». Для реализации обратных связей по положению используются преобразователи фаза-код (ПФК), составляющие группу «Датчики». Для решения задач адаптивного управления (например, систем стабилизации мощности резания) могут быть использованы аналого-цифровые преобразователи (АЦП) - группа «Адаптивное управление». Пульт управления (ПУ) содержит набор алфавитно-цифровых клавиш, с помощью которых можно осуществлять ввод управляющей программы. Кроме того, имеются функциональные клавиши, с помощью которых задается режим работы УЧПУ и определяются специальные функции, соответствующие поиску, редактированию управляющих программ. Пульт коррекции (ПК) представляет собой набор декадных переключателей, с помощью которых можно осуществлять изменение значений скорости подачи и скорости вращения главного движения в процентном соотношении. Для отображения текущего значения координат и технологических параметров используется алфавитно-цифровой дисплей - блок отображения символьной информации (БОСИ) . Для ввода и вывода управляющей программы могут быть использованы фотосчитывающее устройство (ФСУ) и ленточный перфоратор (ПЛ). В качестве носителя информации в этом случае используется перфолента. Другой вариант ввода-вывода информации основан на использовании канала последовательной связи (ИРПС - интерфейс радиальной последовательной связи). Для увеличения быстродействия 6 используют аппаратный блок умножения (БУ) и блок преобразования кодов (БПК).

Базовое программное обеспечение УЧПУ записывается в постоянное запоминающее устройство (ПЗУ) и представляет собой набор подпрограмм, реализующих так называемые подготовительные G и вспомогательные функции М, а также сервисные функции по вводу и отработке управляющей программы.

Управляющая программа представляет собой последовательность кадров, определяющих траекторию движения инструмента. В кадре с помощью G и М-функций определяются тип интерполяции (линейная, круговая), перемещения по координатам, скорости подач и частоты вращения привода главного движения, тип и коррекция на вылет режущего инструмента и другая информация, определяющая работу на участке траектории. Рассмотрим отработку управляющей программы с точки зрения функционирования и использования блоков УЧПУ. Основное машинное время при отработке кадра затрачивается на расчет траектории движения инструмента. Движение по траектории в общем случае включает в себя участки разгона и торможения. Согласование движения по координатам и формирование задающих воздействий осуществляется программным интерполятором, который разворачивает требуемую траекторию во времени по прерываниям от таймера. Отработка этой траектории осуществляется следящими приводами подач. Сигнал ошибки по положению формируется программным способом, а затем выдается через ЦАП в качестве сигнала управления скоростью электропривода. Привод подачи (главного движения) при этом представляет собой автономное устройство, которое должно быть замкнуто обратной связью по скорости. Работа интерполятора должна осуществляться в реальном масштабе времени. При использовании численных методов интегрирования шаг интегрирования определяется периодом прерывания от таймера. Для обеспечения частоты среза приводов порядка 50 Гц прерывания от таймера должны производиться на частоте не менее 100 Гц. Во время отработки текущего кадра в фоновом режиме происходит подготовка информации для следующего кадра. Этот этап называется «Интерпретация кадра». Он включает в себя преобразование символьной информации в числовую. Числовая информация вводится в десятеричной системе счисления. Вначале символьная информация преобразуется в двоично-десятичную систему, а затем с помощью БПК - в двоичную. Аналогичная задача преобразования информации возникает и в каналах обратной связи по положению. Контроль положения осуществляется в двоично-десятичном коде. Для согласования информация с преобразователя фаза-код преобразуется к машинному (двоичному) представлению. При выводе информации возникает обратная задача - преобразование двоичной информации в двоично-десятичные числа, а затем в символьное представление.

Методы программирования систем ЧПУ

Существует три основных способа разработки управляющих программ:

· ручное программирование (manual programming techniques);

· программирование на стойке ЧПУ (shop-floor);

· программирование при помощи CAM-систем.

До настоящего момента мы использовали исключительно ручное программирование на уровне G-кодов, чтобы проще было понять основы ЧПУ. Далее мы рассмотрим другие методы создания управляющих программ и покажем на реальных примерах использование каждого метода для того, что бы вы решили – который из них является лучшим. Следует уяснить себе различия в этих трех способах программирования и помнить, что ни один из них не является панацеей для любого из производств. Каждый метод имеет свою нишу в машиностроительной отрасли.

Ручное программирование. Ручное программирование является весьма утомительным занятием. По общему признанию, слова, адреса и кадры воспринимаются большинством новичков, как "китайская грамота". Однако все программисты-технологи обязаны иметь хорошее понимание техники ручного программирования независимо от того, действительно ли они ее используют.

Можно сопоставить ручное программирование для ЧПУ с выполнением арифметических вычислений при помощи ручки и бумаги в противоположность вычислениям на электронном калькуляторе. Преподаватели математики единодушно соглашаются с тем, что школьники сначала должны научиться выполнять арифметические вычисления вручную. И только потом использовать калькулятор для того, чтобы ускорить процедуру нудных вычислений.

Что может быть лучше, чем ручное программирование? Все еще остается немало производств, в которых применяют исключительно ручное программирование для станков с ЧПУ. Действительно, если используется несколько станков с ЧПУ, а изготавливаемые детали достаточно просты, то грамотный технолог-программист с великолепной техникой ручного программирования будет способен превзойти по производительности труда мощного программиста-технолога, использующего CAM-систему. Или используются станки для выполнения ограниченной номенклатуры изделий. Как только обработка таких изделий запрограммирована, она вряд ли будет изменена когда-либо в будущем.

В этом случае ручное программирование для ЧПУ наиболее экономически эффективно.

Наконец, даже в случае применения CAM-системы нередко возникает потребность коррекции кадров УП вследствие обнаружения ошибок на этапе отработки. Также, общепринятой является коррекция кадров УП после ряда первых пробных прогонов на станке с ЧПУ. Если для выполнения этих, часто элементарных, корректировок программист должен опять использовать CAM-систему, то это неоправданно удлинит процесс подготовки производства.

Программирование на пульте системы ЧПУ (оперативные системы). Этот метод программирования стал весьма популярен в последние годы. Программы создаются и вводятся непосредственно на стойке системы ЧПУ, используя клавиатуру, дисплей, а также систему графических пиктограмм и меню.

Программист может немедленно проверить кадры УП путем графической имитации обработки на экране стойки.

Системы диалогово-графического проектирования существенно различаются между собой. В большинстве случаев, любая из них является одноцелевой системой, предназначенной для автоматизации программирования определенного типа обработки на определенном оборудовании. Мало того, некоторые модели, особенно уже снятые с производства, были рассчитаны только на ручной ввод управляющей программы и тем самым не могли обеспечить технологию удаленного программирования при помощи CAM-системы. Однако более современные модели могут работать как в диалоговом режиме, так и имеют устройства для ввода G-кодов, которые сгенерированы другими CAM-системами. Имеются проблемы, связанные с программированием на пульте системы СПУ. Некоторые программисты используют исключительно метод программирования на стойке ЧПУ. Другие рассматривают такой метод экономически неэффективным, даже расточительным. Неудивительно, что каждая из сторон в споре имеет свои аргументы "за и против".

Предприятия, которые используют ограниченное число рабочих и выпускает широкий ассортимент деталей, склонны использовать метод программирования непосредственно у станка с ЧПУ. Здесь один работник может использоваться для выполнения разнообразных задач, связанных с обслуживанием станков с ЧПУ. Например, оператор станка с ЧПУ занимается установкой заготовки, ее закреплением, вводом УП, проверкой и оптимизацией УП и следит за обработкой. В этом случае метод программирования "у стойки с ЧПУ" весьма оправдан и более эффективен, чем оплата услуг некого "удаленного" программиста-технолога.

В условиях крупного производства основная цель состоит в максимальной загрузке станка с ЧПУ. Тогда используется уже целый штат сотрудников, поддерживающих максимальную загрузку станков и бесперебойное изготовление деталей на каждом станке. Независимо от причины, время простоя станка будет воспринято руководством как потеря времени и денег. Один человек может устанавливать инструменты для изготовления следующей детали в то время как обрабатывается текущая деталь (готовит переналадку станка заранее). Остальные работники в этот момент загружают УП и отлаживают их. В этом случае оператор станка только устанавливает заготовки и снимает готовые детали. Штат поддержки минимизирует потери времени, связанные с установкой и наладкой, а также разгрузкой станка, выполняя главную задачу – минимизировать время, в течение которого станок простаивает. Можно легко понять, что руководство не будет заинтересовано в разработке УП непосредственно у станка, поскольку это приведет к колоссальным затратам машинного времени.

Существуют два других фактора, влияющих на использование того или иного метода. Первый имеет отношение к стимулированию оператора станка с ЧПУ. Человек, выполняющий диалоговое проектирование УП, должен иметь более высокую оплату труда и мотивацию. Ведь этот сотрудник вносит существенный вклад в успех дела. Имея такие стимулы, сотрудник может превзойти "обычного" программиста-технолога, неспешно разрабатывающего УП вдалеке от цеха.

Другой фактор, влияющий на выбор метода программирования, это номенклатура изготавливаемых деталей, для которых нужно написать управляющие программы. Если номенклатура значительна, то вряд ли будет успешно программирование у стойки.

Программирование при помощи САМ-систем. САМ-системы позволяют "поднять" программирование для станков с ЧПУ на более высокий уровень по сравнению с рутинным ручным программированием. САМ-системы постоянно привлекают на свою сторону все большее число сторонников. Обобщая, можно сказать, что САМ-системы облегчают труд технолога-программиста в трех главных направлениях:

· избавляют технолога-программиста от необходимости делать математические вычисления вручную;

· позволяют создавать на одном базовом языке управляющие программы для различного оборудования с ЧПУ;

· обеспечивают технолога типовыми функциями, автоматизирующими ту или иную обработку.

Для использования САМ-системы, технолог-программист применяет персональный компьютер или рабочую станцию. Компьютерная программа автоматически генерирует управляющую программу(G-код). Затем управляющая программа передается тем или иным способом в память стойки станка с ЧПУ.

САМ-системы можно разделить на две категории – с языковым и графическим способом ввода информации. Используя первые, технолог обязан использовать язык программирования, подобный БЕЙСИКУ или С (си). Эти САМ-системы требуют программирования и некоторые из САМ-систем в силу этого весьма сложны для освоения.

На другом полюсе располагаются САМ-системы, где каждый шаг обработки задается интерактивно в графическом режиме. Программист имеет зрительную обратную связь в течение каждого шага задачи программирования. Поэтому в общем случае такие системы более просты в изучении и работе.

Последовательность процедур в САМ-программировании. Несмотря на то, что возможности и "внешний вид" САМ-систем отличаются друг от друга, все же есть нечто общее, что их объединяет – это методология их использования. Сначала, программист должен ввести некую общую информацию. Во-вторых, описать параметры заготовки, а также рабочего места (зажимного приспособления и инструмента). Необходимо также определить последовательность обработки.

Общая информация (1 шаг). На этом шаге от программиста потребуется ввод информации о наименовании детали, ее шифра, даты разработки и имени управляющей программы. Нередко на этом шаге задаются габариты детали и размер экрана дисплея для того, чтобы настроить автоматическое масштабирование. Как правило, на этом этапе вводится информация о материале и параметрах заготовки.

Определение и уравновешивание геометрии (2 шаг). Используя ряд методов определения разобщенной геометрии, программист постепенно описывает форму обрабатываемой детали. В САМ-системах с графическим вводом программист к тому же увидит на экране каждый элемент геометрии. Программист имеет возможность выбора наиболее подходящего способа для построения разобщенной геометрии, служащей задаче описания формы обрабатываемой детали.

Как только геометрия определена, большинство САМ-систем предполагает проведение процедуры уравновешивания геометрии (the geometry be trimmed) для того, чтобы геометрия соответствовала фактической форме обрабатываемой детали, которую нужно получить. Например, линия, выходящая за пределы экрана, ограничивается до отрезка. Уравновешиванию подвергается и каждая дуга окружности.

Формирование строки обхода. Большинство САМ-систем допускает импортирование геометрии детали, спроектированной в CAD-системе. Это особенно полезно в случае деталей сложной формы, ведь технологу не нужно тратить усилия на повторное описание сложной геометрии. Однако имеются четыре немаловажных замечания, которые "портят" идеалистическую картину "сквозного проектирования-изготовления".

Во-первых, все элементы чертежа, созданного в САD-системе, должны быть выполнены строго в одном масштабе. Нам хорошо известна практика подгонки отдельных размеров конструктором только для того, что бы сделать качественную прорисовку чертежа или просто ускорить черчение. Например, выбран уменьшающий масштаб, при котором мелкие детали чертежа будут не видны на прорисовке. Значит надо изобразить мелкий элемент увеличенным, а размер поставить который требуется. В результате у технолога возникнет масса неприятностей и на поиск и коррекцию ошибочного элемента.

Во-вторых, из чертежа детали, сделанного конструктором, технологу нужно совсем немного информации. Если в САМ-систему импортируется полный чертеж, то технолог потратит немало времени на то, чтобы удалить лишние элементы геометрии, размеры, штриховки и т. п. До тех пор, пока CAD-системы не оснастят простыми, удобными и мощными средствами фильтрации геометрии, технолог по-прежнему будет терять драгоценное время на "чистку".

Третье замечание. Важно уже в процессе проектирования соблюсти соглашение о местонахождении нулевой точки чертежа. Начало координат чертежа желательно расположить в нижнем левом углу чертежа. В этом случае процесс импортирования чертежа в CAM-систему пройдет без запинки. В противном случае, технологу опять потребуется время для устранения проблем.

Четвертое замечание. В большинстве САМ-систем предполагается, что геометрия детали будет описана в некотором формате, наиболее подходящем для программирования обработки. Яркий пример – токарная обработка. Вам знакомы размерные цепи. В большинстве своем, конструкторы редко задумываются об этом. В результате технолог повторно рассчитывает весь контур детали вручную.

Именно поэтому, многие пользователи САМ-систем часто приходят к выводу, что проще заново переопределить чертеж в САМ-системе (для простых обрабатываемых деталей), чем импортировать рисунки из CAD-систем. Поскольку обрабатываемые детали становятся все более сложными и весьма трудно переопределить элементы чертежа, способность импортировать геометрию из CAD системы в CAM-систему становится очень важной проблемой.

Определение процедуры обработки (3-й шаг). На третьем шаге программист задает в САМ-системе способ обработки детали. Ему предоставляяется немалое количество готовых решений. Многие САМ-системы включают интерактивные меню для задания параметров конкретного вида обработки. Программисту остается только ввести параметры, а САМ-система сама рассчитает траекторию обработки. На этом шаге САМ-система визуализирует траекторию инструмента, предоставляя программисту возможность визуального анализа того, что может произойти на станке. Эта способность визуализировать УП прежде, чем она реально исполниться на станке, является одним из преимуществ САМ-систем. В конце концов, программист может ввести команду для выработки управляющей программы в виде G-кодов.

Как сохраняют управляющие программы. Независимо от того, каким образом была создана CNC-программа, заводские технологи всегда обеспокоены вопросами сохранения архивов УП и процедурами поиска в них. Даже в том случае, когда станок с ЧПУ выполняет одну и ту же программу, необходимо предварительно скопировать УП на случай возникновения сбоя при чтении в стойке станка.

Конечно, как только программа проверена на станке, пользователь захочет сохранить программу в ее эталонном виде для использования в недалеком будущем. Это может быть сделано несколькими способами.

Запоминающие устройства для хранения УП и организации поиска, включают: устройства записи-чтения на магнитной ленте, устройство ввода-вывода на перфоленту, переносимые гибкие магнитные дискеты, устройства оперативной памяти, портативный компьютер и настольные компьютеры. Персональные компьютеры – наиболее популярный способ хранения, поиска и передачи управляющих программ. Давайте кратко обсудим, как они могут использоваться для передачи УП на станок с ЧПУ.

Все современные системы с ЧПУ типа CNC укомплектованы RS-232-C портом. Все современные персональные компьютеры также оборудованы RS-232-C портом. Подключая кабелем перечисленные выше два порта, пользователь может управлять процессом передачи данных от компьютера в ОЗУ системы с ЧПУ.

Безусловно, для этого требуется специализированная программа, которая может как загружать, так и выгружать УП из стойки ЧПУ. Большинство современных САМ-систем включают в свой состав программы для загрузки УП. Более того, имеется масса независимых поставщиков, они специализируются не только на передаче УП, но и на прямом управлении станков ЧПУ от компьютеров. В этих случаях стойка с ЧПУ уже практически не нужна. Подобные системы сокращенно именуют DNC.

2. ТИПЫ СТАНКОВ С ЧПУ

2.1 Структура и содержание программы ЧПУ

Указание

Руководством по разработке программы обработки деталей является DIN 66025.

Программа (ЧПУ/обработки деталей) состоит из последовательности кадров ЧПУ (см. следующую таблицу). Каждый кадр представляет собой один шаг обработки. В кадре записываются операторы в форме слов. Последний кадр в последовательности выполнения содержит специальное слово для конца программы: M2, M17 или M30.

;комментарий

;1-ый кадр

;2-ой кадр

;конец программы (последний кадр)

Имена программ

Каждая программы имеет собственное имя, которое свободно выбирается при создании программы с соблюдением следующих условий (кроме формата перфоленты):

первыми двумя символами должны быть буквы (также и буква с символом подчеркивания)

прочие буквы, цифры

MPF100 или WELLE или

На ЧПУ показываются только первые 24 знака идентификатора программы.

Формат перфоленты

Имена файлов:

Имена файлов могут включать знаки

0...9, A...Z, a...z или _ и иметь максимальную длину в 24 знака.

Имена файлов должны иметь 3-х буквенное расширение (_xxx).

Данные в формате перфоленты могут создаваться отдельно или обрабатываться в редакторе. Имя файла, сохраненного в памяти ЧПУ, начинается с "_N_ ".

Файл в формате перфоленты вводится % <имя>, "% " должен стоять в первой графе первой строки.

%_N_WELLE123_MPF = программа обработки детали WELLE123 или

%Flansch3_MPF = программа обработки детали Flansch3

Прочую информацию по передаче, созданию и сохранению программ обработки деталей можно найти в:

/BAD/, /BEM/ Руководство по эксплуатации HMI Advanced, HMI Embedded глава "Область управления Программа"/"Область управления Службы"

2.2 Языковые элементы языка программирования

Языковые элементы языка программирования определяются

набором символов с прописными/строчными буквами и цифрами

словами с адресом и последовательностью цифр

кадрами и структурой кадров

длиной кадра с макс. возможным количеством знаков

последовательностью слов в кадре с таблицей адресов и их значением

главными и вспомогательными кадрами

номером кадра

адресами с таблицей для важных адресов и объяснениями

адресами, действующими модально или в кадре

адресами с осевым расширением с таблицей расширенного написания адреса

фиксированными адресами с таблицей и данными по значению для стандартной установки

фиксированными адресами с осевым расширением с таблицей и указанием значения для стандартной установки

устанавливаемыми адресами с указанием устанавливаемых букв адреса

предопределенными вычислительными функциями, а также арифметическими, логическими операторами и операторами сравнения с соответствующим присваиванием значений

идентификаторами, к примеру, переменными, подпрограммами, кодовыми словами, адресами DIN и метками перехода

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Набор символов

Для создания программ ЧПУ имеются следующие символы:

Прописные буквы

A, B, C, D, E, F, G, H, I, J, K, L, M, N,(O),P, Q, R, S, T, U, V, W, X, Y, Z

При этом учитывать:

Не путать букву "O" с числом "0".

Строчные буквы

a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z

Указание Прописные и строчные буквы не различаются.

1, 2, 3, 4, 5, 6, 7, 8, 9

Специальные символы

% Символ начала программы (только для создания программы на внешнем PC)

< меньше

> больше

: Главный кадр, конец метки, связывающий оператор

= Присвоение, часть равенства

/ Деление, пропуск кадра

* Умножение

Сложение

- Вычитание, отрицательный знак

" Кавычки, идентификация для цепочки символов

" Апостроф, идентификация для специальных числовых данных: шестнадцатеричные, двоичные

? Зарезервировано

! Зарезервировано

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Указание Скрытые специальные символы обрабатываются как символы пробела.

Программы ЧПУ состоят из кадров; кадры в свою очередь состоят из слов.

Слово "Языка ЧПУ" состоит из символа адреса и цифры или последовательности цифр, представляющей арифметическое значение.

Символом адреса слова является буква. Последовательность цифр может включать знак и десятичную точку, при этом знак всегда стоит между буквами адреса и последовательностью цифр. Положительный знак (+) не записывается.

Кадры и структура кадров

Программа ЧПУ состоит из отдельных кадров, кадр – из (нескольких) слов.

Кадр должен включать в себя все данные для выполнения рабочей операции, и заканчивается символом "LF " (LINE FEED = новая строка).

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Указание

Символ "LF " не записывается; он создается автоматически при переключении строк.

Длина кадра

Кадр может состоять макс. из 512 символов (включая комментарий и символ конца кадра

"LF ").

Указание Обычно в актуальной индикации кадра на дисплее показываются три кадра с макс.

66 символов каждый. Комментарии также показываются. Сообщения показываются в отдельном окне сообщений.

Последовательность слов в кадре

Для наглядности структуры кадра, слова кадра должны располагаться следующим образом:

N10 G… X… Y… Z… F… S… T… D… M… H…

Значение

Адрес номера кадра

Номер кадра

Функция перемещения

Путевая информация

Число оборотов

Инструмент

Номер коррекции инструмента

Дополнительная функция

Вспомогательная функция

Указание Некоторые адреса могут использоваться многократно в одном кадре (к примеру, G…, M…, H…)

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Главный/вспомогательный кадр

Различаются два вида кадров:

главные кадры и

вспомогательные кадры

В главном кадре должны быть указаны все слова, необходимые для запуска технологического цикла с раздела программы, начинающегося с главного кадра.

Указание Главные кадры могут находиться как в главной, так и в подпрограммах. СЧПУ не

проверяет, содержит ли главный кадр всю необходимую информацию.

Номер кадра

Главные кадры обозначаются номером главного кадра. Номер главного кадра состоит из символа ":" и положительного целого числа (номер кадра). Номер кадра всегда стоит в начале кадра.

Указание Номера главных кадров внутри программы должны быть уникальными, чтобы получить

однозначный результат при поиске.

:10 D2 F200 S900 M3

Вспомогательные кадры обозначаются номером вспомогательного кадра. Номер вспомогательного кадра состоит из символа "N" и положительного целого числа (номер кадра). Номер кадра всегда стоит в начале кадра.

Указание Номера вспомогательных кадров внутри программы должны быть уникальными, чтобы

получить однозначный результат при поиске.

Последовательность номеров кадров может быть любой, но рекомендуется растущая последовательность номеров кадров. Можно программировать кадры ЧПУ и без номеров кадров.

Основы Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Адреса это фиксированные или устанавливаемые идентификаторы для осей (X, Y, ...) числа оборотов шпинделя (S), подачи (F), радиуса окружности (CR) и т.д.

Пример: N10 X100

Важные адреса

Примечание

Круговая ось

ливаемый

Интервал перешлифовки для траекторных функций

фиксированный

Круговая ось

ливаемый

Круговая ось

ливаемый

Снятие фасок угла контура

фиксированный

Номер режущей кромки

фиксированный

фиксированный

FA[ось ]=... или

Осевая подача

фиксирован-

FA[шпиндель ]=... или

(только если номер шпинделя задается через переменную)

Функция перемещения

фиксированный

Вспомогательная функция

фиксирован-

Вспом. функция без остановки чтения

Параметр интерполяции

устанавливаемый

Параметр интерполяции

устанавливаемый

Параметр интерполяции

устанавливаемый

Вызов подпрограммы

фиксированный

Доп. функция

фиксирован-

Доп. функция без остановки чтения

Вспомогательный кадр

фиксированный

Процентовка траектории

фиксированный

Кол-во прогонов программы

фиксированный

Позиционирующая ось

фиксированный

POSА[ось]=…

фиксированный

Позиция шпинделя

фиксирован-

Позиция шпинделя за границу кадра

фиксирован-

устанавливаемый

R0=... до Rn=...

R-параметр, n может устанавливаться через MD

фиксирован-

(стандарт 0 - 99)

устанавливаемый

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Закругление угла контура

фиксированный

Закругление угла контура (модально)

фиксированный

Число оборотов шпинделя

фиксированный

Номер инструмента

фиксированный

устанавливаемый

устанавливаемый

устанавливаемый

устанавливаемый

" абсолютный

" инкрементальный

устанавливаемый

устанавливаемый

Апертурный угол

устанавливаемый

Полярный угол

устанавливаемый

Радиус окружности

устанавливаемый

Полярный радиус

фиксированный

Главный кадр

устанавливаемый

"фиксированный"

Этот идентификатор адреса доступен для определенной функции. Изготовитель станка

"устанавливаемый"

Этим адресам изготовитель станка через машинные данные может присвоить другое имя.

Адреса, действующие модально/покадрово

Модально действующие адреса сохраняют свою значимость с запрограммированным значением до тех пор (во всех последующих кадрах), пока по тому же адресу не будет запрограммировано новое значение. Действующие покадрово адреса сохраняют свою значимость только в том кадре, в котором они были запрограммированы. Пример:

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Расширенные адреса

Расширенное написание адресов позволяет систематизировать большее количество осей и шпинделей. Расширенный адрес состоит из цифрового расширения или из записанного в квадратных скобках идентификатора переменных и присвоенного с помощью символа "=" арифметического выражения.

Расширенное написание адреса допускается только для следующих простых адресов:

Значение

Адреса осей

Параметры интерполяции

Число оборотов шпинделя

Позиция шпинделя

Дополнительные функции

Вспомогательные функции

Номер инструмента

Число (индекс) при расширенном написании адреса для адресов M, H, S, а также для SPOS и SPOSA может заменяться переменной. При этом идентификатор переменных стоит в квадратных скобках.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Фиксированные адреса

Следующие адреса установлены фиксировано:

Значение (стандартная установка)

Номер режущей кромки

Функция перемещения

Вспомогательная функция

Вызов подпрограммы

Дополнительная функция

Вспомогательный кадр

Число прогонов программы

R-параметр

Число оборотов шпинделя

Номер инструмента

: Главный кадр

Пример для программирования: N10 G54 T9 D2

Фиксированные адреса с осевым расширением

Значение (стандартная установка)

Осевое значение (переменное программирование оси)

Осевое ускорение

Осевая подача

Осевая подача для наложения маховичка

Осевое ограничение подачи

Параметры интерполяции (переменное программирование оси)

Осевая процентовка

Полиномиальный коэффициент

Позиционирующая ось

Позиционирующая ось через границу кадра

Объяснение:

При программировании с осевым расширением перемещаемая ось стоит в квадратных скобках.

Полный список всех фиксировано установленных адресов можно найти в приложении.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Устанавливаемые адреса

Адреса могут определяться либо как буква оси (при необходимости с цифровым расширением), либо как свободный идентификатор.

Указание Устанавливаемые адреса должны быть однозначными внутри СЧПУ, т.е. один и тот

же идентификатор адреса не может использоваться для различных типов адресов.

В качестве типов адресов при этом различаются:

осевые значения и конечные точки

параметры интерполяции

подачи

критерии перешлифовки

измерение

поведение осей и шпинделей

Устанавливаемыми буквами адреса являются: A, B, C, E, I, J, K, Q, U, V, W, X, Y, Z

Указание Имена устанавливаемых адресов могут изменяться пользователем через машинные данные.

X1, Y30, U2, I25, E25, E1=90, …

Цифровое расширение имеет одну или две позиции и всегда является положительным. Идентификатор адреса:

Написание адреса может дополняться добавлением других букв. Пример:

Сложение

Вычитание

Умножение

Внимание: (тип INT )/ (типINT )= (типREAL ); к примеру, 3/4 = 0.75

Деление, для типа переменных INT и REAL

Внимание: (тип INT )DIV (типINT )= (типINT ); к примеру, 3 DIV 4 = 0

Выделение дробной части (только для типа INT) дает остаток деления

INT, к примеру, 3 MOD 4=3

: Связывающий оператор (у фрейм-переменных)

Арксинус

Арккосинус

Арктангенс2

Квадратный корень

Значение

2-ая степень (квадрат)

Целочисленная часть

Округление до целого

Натуральный логарифм

Показательная функция

Операторы сравнения и логические операторы

Операторы сравнения и

Значение

логические операторы

больше или равно

меньше или равно

отрицание

исключающее "ИЛИ"

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

В арифметических выражениях с помощью круглых скобок можно устанавливать последовательность обработки всех операторов, отклоняясь тем самым от обычных правил очередности.

Присвоения значений Адресам могут присваиваться значения. Присвоение значений осуществляется

различными способами в зависимости от вида идентификатора адреса.

Символ "=" должен быть записан между идентификатором адреса и значением, если

идентификатор адреса состоит более чем из одной буквы,

значение состоит более чем из одной постоянной.

Символ "=" не нужен, если идентификатором адреса является одна единственная буква и значение состоит только из одной постоянной. Знаки разрешаются, допускается символ разделения после букв адреса.

Пример присвоения значений

;присвоение значения (10)

адресу X, "=" не требуется

;присвоение значения (10)

адресу (X) с;цифровым

расширением (1), "=" требуется

;имена осей из параметров передачи

;имя оси как индекс при обращении к данным осей

;косвенное программирование осей

X=10*(5+SIN(37.5))

;присвоение значения через цифровое выражение, "=" требуется

Указание За цифровым расширением всегда должен следовать специальный символ "=", "(", "[", ")",

"]", "," или оператор, чтобы отличать идентификатор адреса с цифровым расширением от букв адреса со значением.

Идентификатор Слова (по DIN 66025) дополняются идентификаторами (именами). Эти расширения имеют внутри кадра ЧПУ то же значение, что и слова. Идентификаторы должны быть однозначными. Один и тот же идентификатор не может использоваться для различных объектов.

Идентификаторы могут записываться для:

переменной

системной переменной

переменной пользователя

подпрограммы

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ

кодовых слов

адресов DIN с несколькими буквами

меток перехода

Структура

Идентификатор состоит максимум из 32 символов. В качестве символов могут использоваться:

буквы

символов подчеркивания

цифры

Первыми двумя символами должны быть буквы или символы подчеркивания, между отдельными символами не должны находится символы разделения (см. следующие страницы).

Пример: CMIRROR, CDON

Указание Зарезервированные кодовые слова не могут использоваться в качестве

идентификаторов. Разделительные символы между отдельными символами запрещены.

Указание Количество символов для отдельных идентификаторов

имена программ: 24 символа

идентификатор оси: 8 символов

идентификатор переменных: 31 символ

Правила присвоения имен идентификаторов

Во избежание совпадения имен используются следующие правила:

Все идентификаторы, начинающиеся с "CYCLE” или "_”, зарезервированы для циклов

Все идентификаторы, начинающиеся с "CCS”, зарезервированы для циклов, компилируемых SIEMENS.

Пользовательские компилируемые циклы начинаются с "CC”.

Другие резервирования

Идентификатор "RL" зарезервирован для обычных токарных станков.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ

2.2 Языковые элементы языка программирования

Идентификаторы, начинающиеся с "E_ ", зарезервированы для программирования

Идентификаторы переменных

У переменных, используемых системой, первая буква заменяется символом "$". Этот символ не может использоваться для переменных, определяемых пользователем.

Примеры (см. "Список системных переменных"): $P_IFRAME, $P_F

У переменных с цифровым расширением вводные нули не имеют значения (R01 соответствует R1). Перед цифровым расширением разрешаются разделительные символы.

Идентификаторы массива

Для идентификаторов массива действуют те же правила, что и для элементарных переменных. Адресация R-переменных в качестве массива возможна.

Пример: R=…

Типы данных

За переменной может быть скрыто числовое значение (или несколько) или символ (или несколько), к примеру, буква адреса.

Какой тип данных допускается для соответствующей переменной, устанавливается при определении переменных. Для системных переменных и заранее определенных переменных тип установлен. Элементарными типами переменных/типами данных являются:

Значение

Диапазон значений

Целочисленные (целые)

величины со знаком

Действительные числа (дробные

±(10-300 … 10+300)

числа с десятичной точкой, LONG

Значения истинности: TRUE (1)

Символ ASCII, в соответствии с кодом 0 … 255

Цепочка символов, число символов

Последовательность значений

в […], макс. 200 символов

только имена осей (адреса осе)

все имеющиеся в канале

идентификаторы осей

Геометрические данные для

смещения, вращения,

масштабирования, отражения

Эти же элементарные типы могут составляться в массивы. Как максимум возможны двухмерные массивы.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Постоянные

Целые постоянные (Integer)

Целочисленная величина с или без знака, к примеру, как присвоение значения адресу Примеры:

; присвоение значения +10.25 адресу X

; присвоение значения -10.25 адресу X

; присвоение значения +0.25

; присвоение значения +0.25

адресу X, без вводного "0"

; присвоение значения –0.1*10-3 адресу X

Указание Если для адреса с допустимым вводом десятичной точки после десятичной точки

записано больше мест, чем предусмотрено для этого адреса, то он округляется до предусмотренного числа мест.

X0 не может заменяться на X.

G01 X0 не может заменяться на G01 X! Шестнадцатеричные постоянные

Возможны и постоянные, имеющие шестнадцатеричную интерпретацию. При этом буквы "A" до "F" служат шестнадцатеричными цифрами от 10 до 15.

Шестнадцатеричные постоянные заключаются между двумя апострофами и начинаются с буквы "H" с последующим шестнадцатеричным значением. Разрешаются разделительные символы между буквами и цифрами.

$MC_TOOL_MANAGEMENT_MASK="H3C7F" ;присвоение шестнадцатеричных чисел

машинным данным

Максимальное количество символов ограничивается диапазоном значений целочисленного типа данных.

Двоичные постоянные Возможны и постоянные, которые интерпретируются двоично. При этом используются только цифры "0" и "1".

Двоичные постоянные заключаются между апострофами и начинаются с буквы "B" с последующим двоичным значением. Разделительные символы между цифрами разрешаются.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Пример машинных данных (см. также “Расширенное программирование ”):

Сегмент программы

Сегмент программы состоит из одного главного кадра и нескольких вспомогательных кадров.

:10 D2 F200 S900 M3 N20 G1 X14 Y35

Пропуск кадров

Кадры, которые исполняются не при каждом выполнении программы (к примеру, отладка программы), могут быть пропущены.

Кадры, которые должны быть пропущены, обозначаются символом "/" (косая черта) перед номером кадра. Могут пропускаться и несколько последовательных кадров. Операторы в пропущенных кадрах не исполняются, программа продолжается на соответствующем следующем, не пропущенном кадре.

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Пример пропуска кадров

;выполняется

;пропущен

;выполняется

;пропущен

;выполняется

Может быть запрограммировано до 10 уровней пропуска. На один кадр программы

обработки деталей может быть указан только 1 уровень пропуска:

;кадр пропускается (1-ый уровень пропуска)

;кадр пропускается (2-ой уровень пропуска)

;кадр пропускается (3-ий уровень пропуска)

;кадр пропускается (8-ой уровень пропуска)

;кадр пропускается (9-ый уровень пропуска)

;кадр пропускается (10-ый уровень пропуска)

Изготовитель станка Количество уровней пропуска, которые могут использоваться, зависит от машинных

данных индикации. Пропуск кадров уровней пропуска /0 до /9 активируется через панель оператора в области управления "Станок" (см. /BAD, BEM/ Руководство по эксплуатации HMI Advanced/Embedded), в меню "Управление программой" или "Адаптивное управление".

Указание Изменяемые выполнения программы могут создаваться и посредством использования

системных и пользовательских переменных для обусловленных переходов.

Цели перехода (метки)

Посредством определения целей перехода (меток) можно запрограммировать ответвления внутри программы.

Имена меток задаются минимум с 2-мя и максимум с 32 знаками (буквы, цифры, символ подчеркивания). Первыми двумя знаками должны быть буквы или символы подчеркивания. После имени метки следует двоеточие (":").

Прочую информацию см.

Литература: /PGА/, Руководство по программированию "Расширенное программирование"

Руководство по программированию, выпуск 10.2004, 6FC5 298-7AB00-0PP1

Основы программирования ЧПУ 2.2 Языковые элементы языка программирования

Указание Метки должны быть уникальными в пределах программы.

Метки всегда стоят в начале кадра. Если имеется номер программы, то метка стоит непосредственно после номера кадра.

Прогресс микроэлектроники параллельно с повышением требований к качеству обработки, гибкости перенастройки производства вытесняют станки с ручным управлением в сферу ремонта, малого бизнеса и хобби. Программирование станков с ЧПУ – важнейшая часть технологического обеспечения на современных предприятиях.

Программирование заключается в задании взаимосвязанной последовательности команд, представляющих закодированный алгоритм движения рабочих органов, режущего инструмента и заготовки. Наиболее распространенным международным стандартизированным буквенно-цифровым кодом остается ISO 7 bit. Передовые СЧПУ поддерживают как стандартный код, так и фирменные диалоговые языки.

Способы программирования

Процесс программирования можно выполнять:

  • Вручную. Технолог составляет программу на удалённом ПК в текстовом редакторе. Затем переносит её в память СЧПУ посредством USB-накопителя, оптического диска, дискеты или через интерфейсные порты, соединенные с ПК кабелем.
  • На пульте (стойке) УЧПУ. Команды вводятся с клавиатуры и отображаются на экране. Набор пиктограмм соответствует перечню постоянных циклов, которые можно назначить, сокращая объем записи. Ряд систем ( , ) поддерживают диалоговый интуитивный интерфейс, где оператор путем последовательного выбора формирует программу обработки.
  • Автоматизировано в интегрированных /CAM/CAE системах. Передовой способ, требующий внедрения единой электронной системы на всех этапах производственного цикла.

Первый способ может применяться для программирования простых токарных работ, обработки групп отверстий, фрезерования по двум координатам без обработки профильных кривых. Затраты времени велики, ошибки выявляются на станке.

Программирование с пульта позволяет выполнять всё вышеперечисленное, а при диалоговом языке ввода и более сложные переходы 2,5 и 3-х координатной обработки. Оптимальный вариант для корректировки существующих или создания программ групповой обработки по «шаблону».

Работа в CAM системах, например: MasterCAM, SprutCam, ADEM предполагает получение эскиза, модели из CAD, диалоговый выбор станка, пределов перемещений, приспособлений, инструментов (РИ), режимов, переходов и стратегии обработки, задания корректоров. На основании указанного постпроцессор преобразует траекторию движения РИ в управляющую программу (УП). Виртуальную отработку можно просмотреть на мониторе, исключая явные ошибки (зарезы, неснятый припуск, соударения с оснасткой), оптимизируя траекторию.

Порядок написания программ

Написание программ ЧПУ состоит из последовательности действия, одинаковых для любого способа, выполняемых технологом или автоматически. На подготовительном этапе выполняют:

  • Задание параметров заготовки. В САМ системах: габариты, материал, твердость.
  • Задание системы координат и нулевых точек.
  • Выбор обрабатываемых поверхностей, расчет числа проходов для снимаемого припуска и глубины резания (в САМ предлагаются варианты разбивки).

  • Выбор РИ.
  • Задание режимов резания: подачи, скорости (числа оборотов) и скоростей ускоренных ходов. САМ системы реализуют автоматический подбор оптимальных, в дальнейшем записываемых в кадрах посредством функций F, S.
  • В САМ программах выбирают станок, СЧПУ.

На основном этапе рассчитывается траектория движения центра инструмента, управляющая программа описывает рабочие и холостые перемещения этой точки. При ручном способе технолог рассчитывает координаты всех опорных точек обрабатываемого контура, в которых изменяется направление обхода. Перемещение РИ описывает последовательность кадров, содержащих подготовительную функцию G, устанавливающую вид движения и размерные слова (Х,Y, Z, A, B, C, прочие), задающие перемещения по координатам.