Логотип сайта поддержки пользователей САПРО сайте поддержки пользователей САПР Translate to:

Постпроцессор для любой системы ЧПУ и для устаревшей тоже.

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

Сергей Голоднов
ssg@tyazhmash.com

Современная cam система и старая система ЧПУ

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

Но в каждой бочке меда, есть своя ложка дегтя, выше уже упоминалось, что все это подходит, для современных станков с ЧПУ. Написать управляющую программу в CAM модуле не составит труда, сложно получить программу для конкретной стойки ЧПУ. Основные проблемы возникают при постпроцессировании созданной управляющей программы. Вы спросите, а что тут сложного, выбирается постпроцессор из списка и получается управляющая программа? Да действительно сейчас нет CAM системы, которая не содержала бы в себе, набор обобщенных постпроцессоров (Catia, Mastercam) или редактор постпроцессоров (Pro/Engender, Delcam-PowerMill). И если ваш парк станков состоит из Sinumerik, Haidenhain или других распространенных на сегодняшний день систем ЧПУ, то проблем с постпроцессором не возникнет. А как быть с такими системами ЧПУ как 2С42-65, 2С42, 2Р22, 2У22 и т.д. А ведь на многих заводах нашей страны сохранились станки с такими системами ЧПУ, некоторые уникальны в своем роде и используются для обработки простых деталей, обработка которых занимает не так много времени, в то время когда новое оборудование загружено более сложными деталями, требующие высокой точности.

Как быть в данной ситуации, подбирать подходящий постпроцессор из списка, а потом долго редактировать управляющую программу, в итоге тратить на это много времени, а если окажется что после проверки придется переделывать часть программы… Или постоянно проверять CLDATA при написании УП, следить чтобы используемые функции поддерживались постпроцессором и вручную вставлять необходимые строки. Как быть в данной ситуации выход - один создать собственный постпроцессор. Но каким он будет? На сегодняшний день распространено 3 способа создания постпроцессоров:

Для создания постпроцессора воспользуемся универсальным генератором постпроцессоров IMSpostTM фирмы IMS Software Inc, которая является мировым лидером в данной области.

Постпроцессор преобразует данные о положении режущего инструмента рассчитанные в CAM-системе (формат APT/CL) в коды конкретного станка (G/M-коды), с учетом особенностей его кинематики. Одно из многих достоинств IMSpostTM это работа со всеми широко распространенными CAD/CAM-системами и аппаратными платформами, что позволяет создавать управляющие программы для оборудования с ЧПУ любого вида и сложности.

Функции IMSpostTM
и много другое.

Создание постпроцессора

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

Основной плюс IMSpost - это дробление постпроцессора на три основных части:

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

Program Codes определяет используемые G и M функции. Любая программа начинает с заголовка ("шапка"), которая всегда будет присутствовать в неизменном виде. В подпункте Start of program прописывается заголовок.

Смена инструмента обычно записывается функциями M6 и регистром T, их сочетание общепринято и редко меняется. Бывают случаи, что строчка с загрузкой инструмента не нужна в силу разных причин. Тогда можно проигнорировать пункт Tool Change или просто удалить в нем все заполненные пункты.

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

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

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

Например, если необходимо сначала заглубиться и только потом уже перемещаться по оставшимся координатам, то сразу появляется вопрос. Как постпроцессор будет делить кадр? Используя IMSpost можно c легкостью ответить на этот вопрос. При ускоренном перемещении достаточно включить опцию разбиения, которая будет считаться определенным образом. Если движение идет от детали, то сначала будет выполнено перемещение по оси Z, а потом - по осям X,Y. Если движение идет к детали, то сначала будет выполнено перемещение по осям X,Y, а потом - по оси Z.

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

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

Следующим шагом следует круговая интерполяция. Для круговой интерполяции есть шесть способов вывода кода:

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

В Motion Functions помимо перечисленных выше способов есть и другие способы отображения движений: сплайновая интерполяция, копирование поверхностей, винтовая интерполяция и много другое.

Следующим пунктом идет Drill Cycle. Как видно из названия данный модуль отвечает за постоянные циклы сверления. Циклы являются больным местом всех постпроцессоров т.к. даже у двух одинаковых стоек может использоваться разная запись циклов и разный набор параметров. Для старых систем ЧПУ существует проблема с некоторыми параметрами, которые могут отсутствовать в современных CAM системах. Еще один нюанс в распространенных на сегодняшний день системах ЧПУ циклы в основном выглядит так: G81 (10,20,52,12), а в старых системах ЧПУ: G81, X22581, Y7000, Z20737, W20737, F1000. Так как шаблон, с которым мы работаем, создан для современной системы ЧПУ, то тут сразу понятно какого вида цикл мы получим. Тут уже ничего не поделаешь необходимо редактировать сам алгоритм вывода цикла или макрос. Говоря простым языком нам необходимы параметры, записанные в скобках адаптировать под выбранную систему ЧПУ или написать свой вывод. Указав в окне Drill Cycle все возможные параметры, открываем Macro Manager (Управление макросами), в открывшемся списке необходимо найти необходимый макрос. Так как в документации для каждой функции Техкарты указывается и связанный с ней макрос, поэтому найти его особого труда не составит.

Язык, который использует IMSpost - высокого уровня, это значит, что на нем можно реализовать все, что требуется в области создания постпроцессоров, например: очень сложные математические операции, такие как векторные счисления, матричные преобразования и т.д. Но несмотря на это язык очень прост и легко понимаем, а главное очень гибок, благодаря открытости и четкому разграничению всех типов переменных (одни используются только в тех макросах, где они прописаны, другие используются в любом месте и т.д.). Встроенный отладчик позволяет быстро проверить написанный код. Совокупность всех этих факторов делает язык написания макросов в IMSpost очень эффективным в данной области, не случайно девиз компании IMS Software Inc: "возможно сделать всё, что описывается математически и логически".

И так зайдя в макрос, находим строку с выводом цикла, необходимо заменить ее. Прежде чем начать необходимо разложить цикл на части:

Осталось собрать данные в одну цепочку вывода. Из документации узнаем переменные, которые содержат искомые параметры. Например: System.X, System.Y - содержат последние значения X,Y. Global.depth - содержит конечную глубину отверстия и т.д.

Если необходимого параметра нет, то тут есть несколько способов, которые зависят от CAM модуля и от искомого параметра:

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

End of Program отвечает за окончание программы т.е. здесь прописывается конец программы, тем же способом что и в самом первом пункте. На этом работу с Program Codes можно закончить и перейти к следующему пункту.

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

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

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

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

Functions Codes (G/M) - раздел похожий на Register format, только работа видеться с функция G и М. Здесь можно отключить вывод "лишних функций", убрать или поставить их модальность, определить используемые регистры и т.д.

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

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

Связь между кинематикой и выводимыми данными устанавливается в Machine Format - параметры станка.

В данном разделе необходимо определить кинематику станка, наиболее простой способ это определить кинематику из модели станка. Кинематика станка создается в отдельном модуле IMSmodel, который поставляется вместе с IMSpost. Есть еще способы определить кинематику станка:

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

Определив вид и кинематику станка можно "прогнать" программу через полученный постпроцессор. Если в получено программе оси направлены правильно то постпроцессор готов, если же направление осей не совпадает, необходимо их поменять. Смена направления осей происходит в разделе Motion Axis, направление осей определяется по специальным правилам, которые описаны в документации на IMSpost.

Теперь постпроцессор готов к работе на его разработку ушло чуть больше половины дня у опытного человека. Если за работу берется человек не знакомый с IMSpost, то разработка постпроцессора займет от одного до двух рабочих дней. Согласитесь достаточно быстрая и самое главное качественная работа - это одно из качеств, сделавших компанию IMS Software Inc и ее продукт IMSpost лидером на рынке создания постпроцессоров.

Заключение

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

Если оборудование подлежит замене, то тут есть только один ответ он же вопрос: "А когда это произойдет?". Если смена старого станка на новый в ближайший год не планируется, то постпроцессор вполне себя окупит. Ведь постпроцессор экономит самый главный показатель в разработке управляющей программы - это время…

Плюс нельзя не отметить то, что используя один постпроцессор, может работать с разными CAM системами. А если использовать другой продукт компании IMS - IMSconvert,то ранее написанные управляющие программы можно будет легко адаптировать под другой станок и другую систему ЧПУ…

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

O компании ЗАО "Техпром"

Компания ЗАО "Техпром" является официальным дистрибьютором программных продуктов компаний: IMS Software Inc. (IMSpost, IMSverify), Dassault System (Catia, Enovia, Delmia, 3DVIA Composer), Simufact GmbH, MSC. Software. Компания ЗАО "Техпром" предлагает услуги по созданию и поддержки постпроцессоров для станков с любой системы ЧПУ, а также создание и поддержка виртуальных моделей станков для симулятора IMSverify.



Copyright © Сайт поддержки пользователей САПР by Victor Tkachenko