Постпроцессоры и результат

Даниил Зинченко, ГК ADEM
Андрей Ловыгин: Предлагаем вашему вниманию статью Даниила Зинченко, сотрудника отдела продаж и маркетинга ADEM. Считаю Даниила одним из самых активных и любознательных специалистов, вовлеченных в отечественный CAM бизнес, где не так уж много людей способно на творчество - тем более, когда речь заходит о постпроцессорах.

Вступление

В настоящей статье будут рассмотрены примеры потребности, рынок и ценность постпроцессоров, как буферного звена между виртуальной моделью детали на рабочем компьютере технолога-программиста и «живой» аналогичной деталью, изготовленной на конкретном станке с ЧПУ. Как известно многим, постпроцессор – это небольшой по размеру программный файл, задачей которого является конвертация векторного описания траектории и положения движения инструмента в САМ-системе (CL Data код) в команды и циклы того или иного устройства ЧПУ (УЧПУ или стойки) конкретного станка с его определённой кинематической схемой. Стоит отметить, что постпроцессор – это файл, относящийся не только к конкретной модели станка с ЧПУ, но и к конкретной фирме-разработчику (вендору) САМ-системы. То есть условности накладываются на постпроцессор сразу по двум параметрам – станок и САМ-система.

У IT-компаний, осуществляющих внедрение САМ-систем на машиностроительных и приборостроительных предприятиях России, исходя из собственного опыта, уже имеется арсенал постпроцессоров для тех или иных моделей станков с ЧПУ. Особенно это касается наиболее популярных моделей станков таких всемирно известных фирм-производителей как HAAS, Okuma, DMG MORI, Hermle, Mazak и пр. В этой связи у предприятий-пользователей часто возникает вопрос, можно ли запросить бесплатно или за умеренную оплату постпроцессор для своего станка, если он уже ранее был создан и отлажен на каком-либо другом производстве? Часто вопрос стоит иначе, можно ли получить базу «стандартных» постпроцессоров, чтобы использовать под свои станки постпроцессоры, сделанные для станков других моделей, но идентичных по кинематике и модели УЧПУ «на борту» соответственно? Применимость к наиболее популярной кинематической схеме станка и наиболее популярной модели стойки как раз и придает постпроцессору оттенок «стандартного».

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

Постпроцессор – индивидуальная разработка под особенности станка

Для начала отмечу, что рынок постпроцессоров определяется огромным обилием марок фирм-изготовителей станков и УЧПУ. И хотя можно выделить сравнительно небольшое количество популярных компоновочных схем станков, но от количества их производителей иногда рябит в глазах! В основном, это касается все вновь появляющихся производств в Республике Корея, в Китае и на Тайване. Каждый производитель старается насытить свою модель станка определенной гаммой тех или иных команд, функций, чтобы выгодно или хоть как-нибудь отличаться от конкурентов. Ни для кого не секрет, что у фирм-поставщиков УЧПУ есть ряд пустых команд (макросов), которые может использовать производитель станка для назначения собственных функций, которые должны осуществляться по этому макросу. Как пример можно привести у стойки Fanuc:

  • G806 – G800 – G801 – G802: Макросы для работы на главном шпинделе или устройстве обработки с тыльной стороны;
  • G816 – G810 – G811 – G812: Макросы для работы на контршпинделе в вертикальном положении;
  • G826 – G820 – G821 – G822: Макросы для работы на контршпинделе в горизонтальном положении.

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

Кроме того отличия в функционале одинаковых моделей станков часто продиктованы работой сервисной службы, которая настраивает станок перед продажей. Поскольку системы ЧПУ поддерживают разветвленный алгоритм выполнения команд (позволяют достигать одного и того же результата разными способами/путями), то возникают ситуации, когда УП с одного станка невозможно просто так перенести на такой же, но настроенный другой сервисной службой. Например, при настройке 5-ти координатного вертикально-фрезерного станка сменили направление вращения осей поворота – разница только в знаке перед величиной угла, но «не глядя» УП для 5-ти координатной обработки уже не передашь с одного станка на другой. Или, что бывает гораздо чаще, для первого станка написали нестандартные макросы, отвечающие за безопасный отвод инструмента по линейным осям, а на втором станке этих макросов нет, и станок начинает выдавать ошибку.

Часто встречаются случаи, когда система координат станка в одной и той же модели может отличаться своим местоположением. В одном случае, например, ноль станка  находился в правом нижнем углу рабочей зоны, а в другом - в левом верхнем, а это, в свою очередь, влияет на правила безопасного отвода инструмента в системе координат станка. Помимо этого, бывают случаи, когда станок и постпроцессор поддерживают разные способы круговой интерполяции при обработке. Например, круговые интерполяции можно формировать с помощью подготовительной функции с параметрами «I » « J » « K », но в постпроцессоре реализован только способ формирования через радиус R или скругление угла. Все эти примеры свидетельствуют о необходимости индивидуальной настройки постпроцессора для каждой единицы станков даже одинаковых моделей, если таковые имеются на производстве.

Стоит отметить одну важную особенность УЧПУ Fanuc, с которой часто приходится сталкиваться при отладке постпроцессора. Функция RTCP (Rotation Tool Control Point), отвечающая за ориентацию оси инструмента при обработке в режиме 5х на вертикально-фрезерном станке с ЧПУ, иногда не поставляется на оборонные предприятия России, но об этом становится известно уже после поставки станка, поскольку в документации к стойке описание функции указано. То ли это связано с отсутствием мирного договора между Россией и Японией после Второй Мировой войны (Fanuc – японский производитель), то ли из-за так называемых Вассенаарских соглашений, которые регламентируют распространение и обмен между государствами-подписантами товаров и технологий, которые могут быть использованы по двойному назначению, - это неизвестно. Если RTCP поддерживается станком, то никакого пересчета координат с учетом углов на осях вращения при разработке постпроцессора делать не надо – за этот пересчет отвечает УЧПУ, т.е. САМ-система передает координаты, рассчитывая только углы на осях вращения. Именно этот механизм дает возможность обрабатывать заготовку в любом месте на столе станка – пересчет координат с учетом реального положения ноля детали и особенностей кинематической схемы станка ведет УЧПУ – она-то знает все реальные смещения относительно нуля станка, в отличие от САМ-системы. Но, если функция отсутствует, то обработку по 5-ти координатам приходится вести в каждом кадре УП с пересчетом всех координат движения инструмента относительно центра вращения, что осложняет как разработку постпроцессора, так и работу технолога при проектировании управляющей программы.

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

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

Как оказалось, круговая интерполяция в левом и правом шпинделе формируется системой ЧПУ по разным принципам, видимо, из-за некорректно установленных производителем систем координат в том и другом шпинделе. Например, вращение главного шпинделя по часовой стрелке задается командой G02, как это и должно быть. Однако команда G02 применительно уже к противошпинделю задаёт поворот против часовой стрелки. Это несоответствие можно обойти методами постпроцессирования: при включении противошпинделя поворот против часовой стрелки стал осуществляться функцией G02, а по часовой стрелке – G03. Та же проблема характерна и в отношении радиусной коррекции слева/справа - G41/G42.

Следующим изъяном можно считать ошибочную симуляцию обработки на стойке ЧПУ станка. При запуске симуляции обработки на экране системы ЧПУ при 4Х и 5Х обработке в противошпинделе неверно проходит процесс симуляции. Например, при обработке паза по траектории на цилиндрической поверхности деталь может сделать фактический поворот согласно УП на 360, а на экране происходит поворот только лишь на 20 или 30. Для решения этих задач необходимо проверять корректность УП по кадрам в ручном режиме.

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

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

Ценообразование на постпроцессоры

Но, наверное, главное ценообразование постпроцессоров лежит в их трудоемкости. Стоимость разработки постпроцессора не окупается лишь одной его продажей. Разработка постпроцессора – это долгий наукоемкий труд, который окупается постепенно по факту каждой новой продажи. Это сродни продаже программного обеспечения. Ведь сам программный продукт делается один раз, а потом тиражируется среди клиентов в виде сколь угодно большого количества лицензионных копий. Но это не означает, что продажа одной копии программного обеспечения окупает затраты на ее разработку. В пример также можно привести изготовление штамповой оснастки. Ее проектирование и производство не окупается лишь одной штамповкой, полученной на ней. Для окупаемости требуется произвести иногда десятки тысяч штампованных деталей.

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

1. Образцы деталей (3D-модели и чертежи), которые планируются для производства на конкретном станке с ЧПУ. Ведь программирование тех или иных циклов в постпроцессоре определяется конструктивными особенностями этих деталей. Чем проще номенклатура – тем легче в создании постпроцессор и, следовательно, дешевле. Например, задействование цикла 800 (CYCLE800) для стойки Siemens Sinumerik означает поворот в пространстве системы координат детали для обработки с наклоном на вертикально-фрезерных станках с ЧПУ с кинематикой 3+2. Если на детали, предполагаемой для обработки на станке, нет конструктивных элементов и поверхностей под уклоном, то и прописывать указанный цикл в постпроцессоре незачем. Поэтому, если требуется снизить стоимость постпроцессора, то при его разработке можно не учитывать циклы, использование которых не предусмотрено номенклатурой производимых деталей.

2. Образец управляющей программы (УП) для понимания формата, в котором привык работать оператор станка с ЧПУ. То есть образец УП нужен для понимания результата, к которому необходимо стремиться разработчику постпроцессора. Так называемая «шапка» УП должна иметь стартовый набор циклов в определенной последовательности: относительная или абсолютная система координат G91/G90, сохраненный ноль детали G54, выбранная позиция режущего инструмента T01 и пр. Эта последовательность по желанию оператора может быть разной или содержать дополнительные циклы. Также для удобства часто необходимо при генерировании УП разбить ее на блоки, соответствующие каждому отдельному переходу. Для удобства навигации по УП каждому блоку можно присвоить название перехода в комментариях. (табл. 1 – в заголовке каждого фрагмента УП указан текст перехода, а также параметры инструмента).

3. Модель станка. Пожалуй, самый главный пункт. Описание модели станка должно включать в себя не только собственно маркировку производителя и модель УЧПУ. Важным фактором является опциональность станка. Ведь те или иные дополнительные опции могут увеличить количество осей станка, по которым возможны перемещения (например, контршпиндель вместо заднего центра, поворотный стол или поворотная фрезерная голова, наличие приводного инструмента, аксиальный или радиальный приводной инструмент и пр.). А сложность постпроцессора определяется главным образом исходя из общего количества одновременно или последовательно управляемых осей станка с ЧПУ, то есть, в сущности, по кинематической схеме станка. А также исходя из наличия тех или иных опций станка: команда синхронизации шпинделей для станков с контршпинделем, команда подачи прутка с помощью барфидера при работе с прутком, а не с мерной заготовкой и пр. Поэтому описание модели станка лучше указывать в следующем формате, например: HAAS ST20Y, 4-х координатный токарно-фрезерный обрабатывающий центр, кинематика XYZC, опции: приводной инструмент по оси C, контршпиндель.

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

Объем работ по постпроцессору

Теперь хочется привести технические примеры ценности средства производства под названием «постпроцессор». Одним из мерил этой ценности является возможность генерировать УП с полной гаммой циклов и функций, присущих конкретному станку. Примером может служить сокращение и упрощение УП благодаря применению циклов глубокого сверления массива отверстий (G83) на цилиндрической поверхности детали (рис. 1, табл. 1). Сквозные отверстия диаметром 8,4 мм в количестве 15 шт. с шагом 24 град. расположены на внешней поверхности тела вращения.

1.jpg
Рис. 1. Массив отверстий на цилиндрической поверхности

1_.jpg
Табл. 1. УП без/с применением цикла глубокого сверления G83

Из приведенной таблицы видно, что УП за счет использования соответствующих циклов можно значительно сократить. Ведь в первом случае обработку придется вести за счет стандартных команд быстрых и рабочих линейных перемещений и поворота детали вокруг оси C вплоть до значения в 336 град., когда будет просверлено последнее отверстие. А во втором случае все параметры обработки задаются всего один раз, а потом тиражируются с каждым поворотом вокруг оси A вплоть до завершения действия цикла G83 с помощью команды G80.

Следующий пример касается использования токарных циклов, за образец возьмем цикл чернового точения вдоль оси Z G71. Рассмотрим процесс растачивания внутренней цилиндрической поверхности детали (рис. 2, табл. 2).

2.jpg
Рис. 2. Растачивание по контуру 

2_.jpg
Табл. 2. УП без/с применением цикла чернового точения G71

Снова отчетливо заметно сокращение УП. Если в первом случае обработка снова ведется за счет быстрых и рабочих (G0 и G1 соответственно) перемещений резца по заданным координатам, то во втором, с помощью цикла G71 удалось сократить УП благодаря использованию параметров, которые означают соответственно: P,Q - кадры начала и конца описания геометрии обрабатываемого контура, U - недоработка в направлении оси X (припуск по X), W - недоработка в направлении оси Z (припуск по Z), F и S – подача и обороты.

Еще одним образцом полезного применения циклов служит процесс обработки на токарно-фрезерных обрабатывающих центрах с приводным инструментом в полярной системе координат (цикл G112). На рис. 3 изображен процесс фрезерования по контуру прямоугольника на торце тела вращения. Обработка в полярной СК, с точки зрения САМ, удобна, например, в случае обработки на торце тела вращения на токарном оборудовании, поскольку применение полярной системы координат по своей математической природе позволяет вести обработку по координате Y фактически без наличия таковой на станке (виртуальная ось Y), а именно, за счет синхронизации поворота вокруг оси C и линейного перемещения фрезы по координате X. Иначе при обработке дуг или скруглений на торце пришлось бы отключать круговую интерполяцию, так как в параметрах ее написания содержится координата оси, которой на станке нет (например, G02 X3.0 Y3.0 I3.0 J0.0 F100). Соответственно, для получения дуги, центр которой не лежит на оси вращения шпинделя, придется аппроксимировать ее отрезками, что значительно увеличивает длину УП и снижает качество поверхности из-за огранки. А при работе в полярной системе координат задача синхронизации движений по одной линейной и круговой оси перекладывается на математический аппарат УЧПУ.

3.jpg
Рис. 3. Обработка прямоугольника по контуру на торце тела вращения в полярной системе координат

3_.jpg
Табл. 3. УП без/с применением цикла обработки в полярной системе координат G112

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

Одна из часто встречающихся проблем станков с ЧПУ как старого, так и более нового образца - недостаточный объем внутренней памяти для хранения и воспроизведения УП. Запуск УП со сменных USB-носителей также не всегда удобен, поскольку считывание информации идет небольшими порциями и не дает в полном объеме оценить корректность выполнения УП, особенно на стадии отладки программы при запуске обработки новой детали.  Решением может послужить переход на автоматическое создание параметрических программ. На рис. 4 изображен пример сверления большого массива отверстий. Для упрощения можно задать параметры обработки одного отверстия, а потом тиражировать ее в определенные места на детали в необходимом количестве. В итоге, исходными параметрами для обработки стали шаг отверстий по оси X, шаг отверстий по оси Y и угол наклона сетки отверстий, а задачей CAM-системы, в свою очередь, стала генерация УП, обеспечивающую обработку отверстий в определенном порядке с помощью подпрограмм. Ниже в таблице приведен образец УП с использованием подпрограмм для обработки детали с массивом отверстий, где L – это имя подпрограммы, а Р – количество повторений.

4.jpg
Табл. 4. Фрагмент УП сверления отверстий с помощью подпрограмм

4_.jpg
Рис. 4. Деталь с массивом отверстий, которая обрабатывается с помощью подпрограмм

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

  • Он занимает слишком много времени, так как кадры УП измерений оператор создает непосредственно на пульте УЧПУ станка. Кроме того, процесс усложняется, если КЭ расположены на разных плоскостях;
  • Время еще больше увеличивается, если речь идет об обмере ряда деталей на паллете при многопозиционной обработке;
  • Набор стандартных измерительных циклов стойки ограничен и не позволяет иногда определить произвольные размеры между определенными КЭ;

Поэтому для ускорения и автоматизации контрольно-измерительных операций современные CAM-системы имеют определенный набор инструментов. Некоторые разработчики САМ-систем внедряют в свои системы дополнительные программные модули для генерирования траекторий щупа. То есть создание траекторий щупа завязано на геометрию того или иного конструктивного элемента (КЭ: отверстие, окно, уступ и пр.), который необходимо обмерять. Например, G65 P9814 D50 Z-10 S4 – цикл обмера отверстия/вала или G65 P9815 X0 Y0 I20 J20 S6 – цикл обмера внутреннего углового элемента для измерительной системы Renishaw. Однако, некоторые размеры, которые необходимо контролировать при обработке детали, не могут быть измерены с помощью стандартных измерительных циклов, реализованных в ЧПУ. Примером может служить определение межцентрового расстояния между двумя отверстиями. Или возможно самому технологу потребуется снять размеры детали, отталкиваясь не от конструкторских баз, а от технологических, чтобы исключить погрешность базирования. Поэтому правильнее будет контролировать не просто размеры отдельных КЭ на детали, но и расстояния между теми или иными КЭ в любых вариациях. Для этого требуется на 3D-модели в CAM-системе указывать точки контакта щупа и задействовать специальные средства измерения, реализованные в САМ-модуле, которые позволяют создать УП измерения детали с использованием измерительных циклов стойки станка в различных комбинациях. Кроме того, такой постпроцессор позволяет вывести результаты измерений в удобный файл отчета (рис. 5). Также хочется отметить, что один и тот же постпроцессор может генерировать УП механической обработки детали и УП измерений после обработки. Но эта функция должна обеспечиваться в большей степени возможностями CAM-системы, позволяющей в одном проекте объединять обрабатывающие и измерительные операции, и генерировать общий CL Data код.

5.jpg
Рис. 5. Маршрут, УП и файл отчета по измерениям

Рассмотрим пример. На рис. 6 изображены два отверстия на модели, расстояние между которыми необходимо измерить. Для этого сначала нужно вычислить центр 1-го отверстия с помощью стандартных циклов. На рис. 7 можно увидеть параметры этого замера, где 16 – порядковый номер измеряемого размера, 1,5 мм – номинальный диаметр нашего отверстия, 10 мм – квалитет точности, 2 мм – перебег, то есть расстояние, за которое включается измерительный цикл. Остальные параметры говорят сами за себя. То же самое касается 2-го отверстия (рис. 8). Когда центры отверстий найдены, то технолог-программист включает расчет траекторий перемещений щупа между отверстиями и с помощью постпроцессора происходит генерирование измерительной УП, а также запись результата в файл протокола. В табл. 5 приведен текст УП обмера всей детали по заранее заданным точкам.

6.jpg
Рис. 6. Дерево измерений и отверстия, между центрами которых происходит измерение расстояния

7.jpg
Рис. 7. Параметры стандартного цикла измерения 1-го отверстия

8.jpg
Рис. 8. Параметры стандартного цикла измерения 2-го отверстия

5_.jpg
Табл. 5. Измерительная УП

Заключение

В приведенном материале мы рассмотрели, с какими непредсказуемыми проблемами сталкивается разработчик постпроцессора для того или иного станка, а также коснулись определенных функций и циклов УЧПУ, которые необходимо реализовывать при создании постпроцессора. На текущий момент практически любая современная CAM-система дает пользователю самый удобный и широкий инструментарий проектирования обработки детали. Однако основной практической ценностью CAM-системы является возможность получения детали не на экране монитора, а на определенном станке с ЧПУ за минимальное время и согласно всем требованиям по чертежу. «Стандартный постпроцессор» обходится стандартными ошибками при его использовании, которые сводят на «нет» саму сущность автоматизации: возложение части человеческих функций на «машину». Как раз адаптация САМ-системы под каждый конкретный станок с ЧПУ в виде отладки постпроцессора и позволяет своевременно и безошибочно производить детали на этом станке. Именно качественное осуществление таких сервисных работ является приоритетом при внедрении отечественной САМ-системы ADEM CAM, которая за почти 30 лет своего существования зарекомендовала себя более чем на 500 предприятиях России и зарубежья.

Читайте также:

Комментарии (1)

Нравится0
g_a_t.livejournal.com
RTCP (Rotation Tool Control Point) - неправильное расшифровано, правильно - Rotation Tool Center Point
У FANUC это называется Tool Center Point (TCP)
Имя Цитировать Нравится0

Оставьте комментарий

 
Текст сообщения*
Защита от автоматических сообщений
 
Авторизуйтесь или Зарегистрируйтесь, чтобы оставить комментарий.