Системы программирования для станков с чпу. Требования, обучение и перспективы программиста станка чпу

Помощь 12.06.2019
Помощь

Программирование обработки на станках с ЧПУ осуществляется на языке, который обычно называют языком ISO 7 бит или языком G и M кодов. Язык G и М кодов основывается на положениях Международной организации по стандартизации (ISO) и Ассоциации электронной промышленности (EIA).

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

Японские системы ЧПУ FANUC (FANUC CORPORATION) были одними из первых, адаптированных под работу с G и М кодами и использующими этот стандарт наиболее полно. В настоящее время стойки FANUC являются наиболее распространенными как за рубежом, так и в России.

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

Существует три метода программирования обработки для станков с ЧПУ :

  • Ручное программирование.

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

  • Программирование на пульте УЧПУ.

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

  • Программирование при помощи CAD/CAM системы.

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

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

Управляющая программа состоит из последовательности кадров и обычно начинается с символа начало программы (%) и заканчивается М02 или М30.

Каждый кадр программы представляет собой один шаг обработки и (в зависимости от УЧПУ) может начинаться с номера кадра (N1...N10 и т.д.), а заканчиваться символом конец кадра (;).

Кадр управляющей программы состоит из операторов в форме слов (G91, M30, X10. и т.д.). Слово состоит из символа (адреса) и цифры, представляющее арифметическое значение.

Адреса X, Y, Z, U, V, W, P, Q, R, A, B, C, D, E являются размерными перемещениям, используют для обозначения координатных осей, вдоль которых осуществляются перемещения.

Слова, описывающие перемещения, могут иметь знак (+) или (-). При отсутствии знака перемещение считается положительным.

Адреса I, J, K означают параметры интерполяции.

G - подготовительная функция.

M - вспомогательная функция.

S - функция главного движения.

F - функция подачи.

T, D, H - функции инструмента.

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

G коды для ЧПУ

G00 - быстрое позиционирование.

Функция G00 используется для выполнения ускоренного перемещения режущего инструмента к позиции обработки или к безопасной позиции. Ускоренное перемещение никогда не используется для выполнения обработки, так как скорость движения исполнительного органа станка очень высока. Код G00 отменяется кодами: G01, G02, G03.

G01 - линейная интерполяция.

Функция G01 используется для выполнения прямолинейных перемещений с заданной скоростью (F) . При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z). Код G01 отменяется кодами: G00, G02, G03.

G02 - круговая интерполяция по часовой стрелке.

Функция G02 предназначена для выполнения перемещения инструмента по дуге (окружности) в направлении часовой стрелки с заданной скоростью (F). При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z).

Код G02 отменяется кодами: G00, G01, G03.

G03 - круговая интерполяция против часовой стрелки.

Функция G03 предназначена для выполнения перемещения инструмента по дуге (окружности) в направлении против часовой стрелки с заданной скоростью (F). При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z).

Параметры интерполяции I, J, K, которые определяют координаты центра дуги окружности в выбранной плоскости, программируются в приращениях от начальной точки к центру окружности, в направлениях, параллельных осям X, Y, Z соответственно.

Код G03 отменяется кодами: G00, G01, G02.

G04 - пауза.

Функция G04 - команда на выполнение выдержки с заданным временем. Этот код программируется вместе с X или Р адресом, который указывает длительность времени выдержки. Обычно, это время составляет от 0.001 до 99999.999 секунд. Например G04 X2.5 - пауза 2.5 секунды, G04 Р1000 - пауза 1 секунда.

G17 - выбор плоскости XY.

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

G18 - выбор плоскости XZ.

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

G19 - выбор плоскости YZ.

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

G40 - отмена коррекции на радиус инструмента.

Функция G40 отменяет действие автоматической коррекции на радиус инструмента G41 и G42.

G41 - левая коррекция на радиус инструмента.

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

G42 - правая коррекция на радиус инструмента.

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

G43 - коррекция на положение инструмента.

Функция G43 применяется для компенсации длинны инструмента. Программируется вместе с функцией инструмента (H).

G54 - G59 - заданное смещение.

Смещение рабочей системы координат детали относительно системы координат станка.

G70 - ввод дюймовых данных.

Функция G70 активизирует режим работы с дюймовыми данными.

G71 - ввод метрических данных.

Функция G71 активизирует режим работы с метрическими данными.

G80 - отмена постоянного цикла.

Функция, которая отменяет любой постоянный цикл.

G81 - стандартный цикл сверления.

Цикл G81 предназначен для зацентровки и сверления отверстий. Движение в процессе обработки происходит на рабочей подаче. Движение в исходное положение после обработки идет на ускоренной подаче.

G82 - сверление с выдержкой.

Цикл G82 предназначен для сверления и зенкования отверстий. Движение в процессе обработки происходит на рабочей подаче с паузой в конце. Движение в исходное положение после обработки идет на ускоренной подаче.

G83 - цикл прерывистого сверления.

Цикл G83 предназначен для глубокого сверления отверстий. Движение в процессе обработки происходит на рабочей подаче с периодическим выводом инструмента в плоскость отвода. Движение в исходное положение после обработки идет на ускоренной подаче.

G84 - цикл нарезания резьбы.

Цикл G84 предназначен для нарезания резьбы метчиком. Движение в процессе обработки происходит на рабочей подаче, шпиндель вращается в заданном направлении. Движение в исходное положение после обработки идет на рабочей подаче с обратным вращением шпинделя.

G85 - стандартный цикл растачивания.

Цикл G85 предназначен для развертывания и растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. Движение в исходное положение после обработки идет на рабочей подаче.

G86 - цикл растачивания с остановкой вращения шпинделя.

Цикл G86 предназначен для растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. В конце обработки происходит остановка шпинделя. Движение в исходное положение после обработки идет на ускоренной подаче.

G87 - цикл растачивания с отводом вручную.

Цикл G87 предназначен для растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. В конце обработки происходит остановка шпинделя. Движение в исходное положение после обработки идет вручную.

G90 - режим абсолютного позиционирования.

В режиме абсолютного позиционирования G90 перемещения исполнительных органов производятся относительно нулевой точки рабочей системы координат G54-G59 (программируется, куда должен двигаться инструмент). Код G90 отменяется при помощи кода относительного позиционирования G91.

G91 - режим относительного позиционирования.

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

G94 - скорость подачи в дюймах/миллиметрах в минуту.

При помощи функции G94 указанная скорость подачи устанавливается в дюймах или в миллиметрах за 1 минуту. Программируется вместе с функцией подачи (F). Код G94 отменяется кодом G95.

G95 - скорость подачи в дюймах/миллиметрах на оборот.

При помощи функции G95 указанная скорость подачи устанавливается в дюймах или в миллиметрах на 1 оборот шпинделя. Т.е. скорость подачи F синхронизируется со скоростью вращения шпинделя S. Код G95 отменяется кодом G94.

M коды для ЧПУ

М00 - программируемый останов.

Когда СЧПУ исполняет команду М00, то происходит останов. Все осевые перемещения останавливаются, при этом шпиндель (у большинства станков) продолжает вращаться. Работа по программе возобновляется со следующего кадра после нажатия кнопки "Старт".

М01 - останов с подтверждением.

Код М01 действует аналогично М00, но выполняется только после подтверждения с пульта управления станка. Если клавиша подтверждения нажата, то при чтении кадра с М01 происходит останов. Если же клавиша не нажата, то кадр М01 пропускается и выполнение УП не прерывается.

М02 - завершение программы.

Код М02 указывает на завершение программы и приводит к останову шпинделя, подачи и выключению охлаждения.

М0З - вращение шпинделя по часовой стрелке.

При помощи кода М0З включается прямое вращение шпинделя с запрограммированным числом оборотов (S) . Код М0З действует до тех пор, пока он не будет отменен с помощью М04 или М05.

М04 - вращение шпинделя против часовой стрелки.

При помощи кода М04 включается обратное вращение шпинделя с запрограммированным числом оборотов (S). Код М04 действует до тех пор, пока он не будет отменен с помощью М03 или М05.

М05 - останов шпинделя.

Код М05 останавливает вращение шпинделя, но не останавливает осевые перемещения.

М06 - смена инструмента.

При помощи кода М06 инструмент, закрепленный в шпинделе, меняется на инструмент, находящийся в положении готовности в магазине инструментов.

М07 - включение охлаждения №2.

Код М07 включает подачу СОЖ в зону обработки в распыленном виде, если станок обладает такой возможностью.

М08 - включение охлаждения №1.

Код М08 включает подачу СОЖ в зону обработки в виде струи.

М09 - отключение охлаждения.

Код М09 выключает подачу СОЖ и отменяет команды М07 и М08.

М10 - зажим.

Код М10 относиться к работе с зажимным приспособлением подвижных органов станка.

М11 - разжим.

Код М11 относиться к работе с зажимным приспособлением подвижных органов станка.

МЗ0 - конец информации.

Код МЗ0 информирует СЧПУ о завершении программы, приводит к останову шпинделя, подачи и выключению охлаждения.

Дополнительные функции и символы при программировании станков с ЧПУ

X, Y, Z - команды осевого перемещения.

А, В, С - команды кругового перемещения вокруг осей X, Y, Z соответственно.

I, J, К - параметры круговой интерполяции параллельные осям X, Y, Z соответственно.

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

D - значение коррекции на радиус инструмента.

Н - значение компенсации длины инструмента.

F - функция подачи.

S - функция главного движения.

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

N - нумерация кадров УП.

/ - пропуск кадра.

(...) - комментарии в УП.

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

Большинство станочных систем ЧПУ имеют в своем распоряжении специальный язык для параметрического программирования (макропрограммирования). Например, в СЧПУ 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 %

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

Для правильной эксплуатации станков с числовым программным управлением (СЧПУ ), с тем, чтобы ими в полной мере реализовывались заложенные в них функциональные возможности, необходимо создание специальных управляющих программ (УП ). При создании таких программ используется язык программирования, известный среди специалистов как язык ISO 7 бит или язык G и M кодов. Различают три основных метода создания программ обработки для СЧПУ : метод ручного программирования, метод программирования непосредственно на стойке ЧПУ и метод программирования с использованием CAM -систем.

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

Метод ручного программирования

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

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

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

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

Способ программирования на пульте стойки СЧПУ

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

Способ программирования с применением CAD/САМ

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

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

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

Введение

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 Гц. Во время отработки текущего кадра в фоновом режиме происходит подготовка информации для следующего кадра. Этот этап называется «Интерпретация кадра». Он включает в себя преобразование символьной информации в числовую. Числовая информация вводится в десятеричной системе счисления. Вначале символьная информация преобразуется в двоично-десятичную систему, а затем с помощью БПК - в двоичную. Аналогичная задача преобразования информации возникает и в каналах обратной связи по положению. Контроль положения осуществляется в двоично-десятичном коде. Для согласования информация с преобразователя фаза-код преобразуется к машинному (двоичному) представлению. При выводе информации возникает обратная задача - преобразование двоичной информации в двоично-десятичные числа, а затем в символьное представление.

Способы программирования станков с ЧПУ

Существуют три способа программирования обработки для станков с ЧПУ :

1. Ручное программирование .

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

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

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

3. Программирование при помощи CAM систем .

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

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

Информация, представленная в любой управляющей программе, подразделяется
на 3 вида:

· геометрическую (задание перемещения по координатам);

· технологическую (задание режимов обработки, инструмента и т. д.);

· логическую (включение/отключение охлаждения, задание вращения шпинделя и т. д.).

Вопросы и задания для самоконтроля

1. Что такое числовое программное управление станком?

2. Дайте определение системы числового программного управления.

3. Что называется устройством числового программного управления станком?

4. Каково назначение и основные сферы применения позиционного и контурного управления?

5. Что такое управляющая программа?

6. Что называется дискретностью перемещения?

7. Что такое эквидистанта?


Тесты к разделу

1. Числовое программное управление станком – это:

а) управление обработкой заготовки на станке по управляющей программе;

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

2. Система числового программного управления – это:

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

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

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

3. Устройство числового программного управления станком – это:

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

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

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

4. Позиционное управление – это:

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

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

5. Контурное управление – это:

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

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

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



Рекомендуем почитать

Наверх