Кому поручить программирование ЧПУ-обработки: программисту-технологу или оператору станка? Основы программирования чпу.

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

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

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

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

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

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

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

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

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

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

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

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

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

Введение

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

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

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

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

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

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

· ручное программирование (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. ТИПЫ СТАНКОВ С ЧПУ

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

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

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

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

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

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

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

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

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

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

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

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

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