|
где прочитать о них → |
Autocad Самоучитель Приемы работ |
Через этот Каталог Вы найдете то, что ищите ! | |||
|
|
| |
2010 |
| • Первое русскоязычное издание по программам в области САПР • |
| |
На этом портале есть прямые ссылки на САПР - CAD, CAM, CAE - программы и их производителей | ||||
СОДЕРЖАНИЕ | ▼ |
Постпроцессор для любой системы ЧПУ | ||||||||
J
Д Ж З О У Ф Х Ц Ч Ш Щ Я
|
г. Сызрань в Энциклопедии Брокгауза Ф.А. и Ефрона И.А. (1890 г. - 1916 г.) Фотографии с сайта Городской Администрации. г. Сызрань, на реке Волге http://syzran-small.net http://www.syzran.ru Администрация г.Сызрань - http://adm.syzran.ru Правительство Самарской области - http://samregion.ru Новости Самары - http://www.riasamara.ru http://samara24.ru http://www.samru.ru Карта Самары и области - http://www.samkarta.ru
© ЗАО «Техпром» , 2008 г.
С.Голоднов, ведущий специалист ЗАО "Техпром", ssg@tyazhmash.com
Постпроцессор для любой системы ЧПУ и для устаревшей тоже…
В данной статье описывается опыт создания постпроцессоров на примере устаревших систем ЧПУ, решаются наиболее распространенных проблемы, возникающие при постпроцессировании управляющих программы для старых систем ЧПУ.
Современная CAM-система и старая система ЧПУ Сегодня львиная доля всех управляющих программ написана с использованием CAM-систем. Это очень удобно для современных станков. Использование CAM-систем позволяет в разы уменьшить время написания управляющих программ, как для сложных деталей, так и для относительно простых. Помимо скорости написания увеличивается и точность обработки. Также внедрение CAM-систем позволило применить современные способы обработки, такие как высокоскоростное фрезерование и т.д. Но в каждой бочке меда есть своя ложка дегтя; выше уже упоминалось, что все это подходит для современных станков с ЧПУ. Написать управляющую программу в CAM-модуле не составит труда, сложно получить программу для конкретной стойки ЧПУ. Основные проблемы возникают при постпроцессировании созданной управляющей программы. Вы спросите, а что тут сложного, выбирается постпроцессор из списка и получается управляющая программа? Да, действительно, сейчас нет CAM-системы, которая не содержала бы в себе, набор обобщенных постпроцессоров (CATIA от Dassault Systems, Mastercam от CNC Software Inc.) или редактор постпроцессоров (Pro/Engineer от PTC, Delcam-PowerMill от Delcam). И если ваш парк станков состоит из Sinumerik, Haidenhain или других распространенных на сегодняшний день систем ЧПУ, то проблем с постпроцессором не возникнет. А как быть с такими системами ЧПУ как 2С42-65, 2С42, 2Р22, 2У22 и т.д. А ведь на многих заводах нашей страны сохранились станки с такими системами ЧПУ, некоторые уникальны в своем роде и используются для обработки простых деталей, обработка которых занимает не так много времени, в то время когда новое оборудование загружено более сложными деталями, требующие высокой точности. Как быть в данной ситуации, подбирать подходящий постпроцессор из списка, а потом долго редактировать управляющую программу, в итоге тратить на это много времени, а если окажется, что после проверки придется переделывать часть программы… Или постоянно проверять CLDATA при написании УП, следить чтобы используемые функции поддерживались постпроцессором и вручную вставлять необходимые строки. Как быть в данной ситуации, выход один - создать собственный постпроцессор. Но каким он будет ?
На сегодняшний день распространено 3 способа создания постпроцессоров: - индивидуальный - это самый старый способ написания постпроцессоров, когда с помощью специальных языков программирования (чаще всего это С++) пишется постпроцессор для определенного станка, процесс очень дорогой, долгий и не гибкий, поэтому мало приемлем; - обобщенный - о данном виде постпроцессоров упоминалось выше, суть данного метода заключается в обобщении однотипных стоек ЧПУ, позволяя вносить в постпроцессор небольшие поправки, по описанным выше причинам, данный метод тоже не подойдет так не может охватить уникальное оборудование; - метод генератора - заключается в создании алгоритмов обработки записей полученных из CAM-модуля, в последствии из набора этих алгоритмов и получается постпроцессор.
Для создания постпроцессора воспользуемся универсальным генератором постпроцессоров IMSpost производства Компании IMS Software Inc., которая является мировым лидером в данной области. Постпроцессор преобразует рассчитанные в CAM-системе (формат APT/CL) данные о положении режущего инструмента в коды конкретного станка (G/M-коды) с учетом особенностей его кинематики. Одно из многих достоинств IMSpost - это работа со всеми широко распространенными CAD/CAM-системами и аппаратными платформами, что позволяет создавать управляющие программы для оборудования с ЧПУ любого вида и сложности.
Функции 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. Для линейной интерполяции можно ввести свои собственные специальные условия, тем самым можно установить правила деления участка перемещения.
Кроме того, для каждого условия деления можно определить правила изменения подачи и скорости шпинделя на данном участке. Например, если угол между данным и следующим участками перемещений слишком острый, то можно потребовать, чтобы определенный процент длины участка выполнялся на большей подаче, а оставшаяся часть – на меньшей подаче. Это обеспечит вам как быструю отработку управляющей программы, так и повышенную точность обработки детали. Так же можно задать условия деления длинны участка на части.
Следующим шагом следует круговая интерполяция. Для круговой интерполяции есть шесть способов вывода кода: - в векторах i,j,k в абсолютных координатах; - в векторах i,j,k расстояние от начала кривой, до ее центра; - в векторах i,j,k расстояние от центра, до начала кривой; - в векторах i,j,k расстояние от центра до начала кривой в абсолютных значениях; - в значениях радиуса; - разбиение на линейные участки. Из перечисленного видно, что проблем с круговой интерполяцией не должны возникнуть. Даже если будет использоваться последний пункт (разбиение на линейные участки) введя параметры линеаризации можно легко контролировать процесс разбиения дуги на линейные отрезки.
В Motion Functions помимо перечисленных выше способов есть и другие способы отображения движений: сплайновая интерполяция, копирование поверхностей, винтовая интерполяция и много другое.
Язык, который использует IMSpost - высокого уровня, это значит, что на нем можно реализовать все, что требуется в области создания постпроцессоров, например, очень сложные математические операции, такие как векторные счисления, матричные преобразования и т.д. Но несмотря на это, язык очень прост и легко понимаем, а главное очень гибок, благодаря открытости и четкому разграничению всех типов переменных (одни используются только в тех макросах, где они прописаны, другие используются в любом месте и т.д.). Встроенный отладчик позволяет быстро проверить написанный код. Совокупность всех этих факторов делает язык написания макросов в IMSpost очень эффективным в данной области, не случайно девиз Компании IMS Software Inc.: «возможно сделать всё, что описывается математически и логически». Итак, зайдя в макрос, находим строку с выводом цикла, необходимо заменить ее. Прежде чем начать необходимо разложить цикл на части: G81 – включение цикла; XY – соответственно координаты отверстий; Z – является глубиной сверления; W – величина отвода; F – подача. Осталось собрать данные в одну цепочку вывода. Из документации узнаем переменные, которые содержат искомые параметры. Например, System.X, System.Y – содержат последние значения X,Y. Global.depth – содержит конечную глубину отверстия и т.д. Если необходимого параметра нет, то тут есть несколько способов, которые зависят от CAM-модуля и от искомого параметра: - если данный параметр присутствует в CAM-системе, то всегда можно его вытащить из (APT/CL) файла; - вычислить, используя математический аппарат IMSpost; - попросить пользователя самому ввести данные, для этого в IMSpost существует специальные диалоговые окна; - вставить строчку в сам APT/CL файл. Выбрав один из пунктов можно закончить формирование цикла, после чего просмотреть полученный результат в отладчике и при удовлетворительном результате перейти к следующему пункту. 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. Есть еще способы определить кинематику станка: - загрузить модель из IMSverify – это еще один продукт Компании IMS Software Inc. предназначенный для симуляции управляющих программ. Здесь для создания кинематики используется специальный модуль IMSмachine позволяющий быстро и без труда создать модели станков со сложной или не стандартной кинематикой; - собрать модель в IMSpost самому определяя все компоненты – в данном случае необходимо придерживаться специальных правил и строго определенной последовательности - это как собирать детскую пирамидку (большое кольцо внизу, кольцо чуть меньше положить на большое кольцо и т.д.), сложность в том, что вы не видите что собираете; - подобрать модель с подходящей кинематикой, так как помимо шаблонов постпроцессоров IMSpost содержит и шаблоны кинематики.
Помимо Техкарты существует еще и главное меню, которое помимо дублирования функций техкарты, содержит и дополнительные функции: - возможность ограничить выводимую управляющую программу по размеру (например, 8 килобайт), что для старых ЧПУ достаточно актуально; - создание справочных таблиц, диалоговых окон; - генерация всех возможных отчетов; - символ конца и начала кадра; - выбор точки касания инструмента.
Определив вид и кинематику станка можно «прогнать» программу через полученный постпроцессор. Если в полученой программе оси направлены правильно, то постпроцессор готов, если же направление осей не совпадает, необходимо их поменять. Смена направления осей происходит в разделе Motion Axis, направление осей определяется по специальным правилам, которые описаны в документации на IMSpost.
Теперь постпроцессор готов к работе, на его разработку ушло чуть больше половины дня у опытного человека. Если за работу берется человек, не знакомый с IMSpost, то разработка постпроцессора займет от одного до двух рабочих дней. Согласитесь, достаточно быстрая и самое главное качественная работа - это одно из качеств, сделавших Компанию IMS Software Inc. и ее продукт IMSpost лидером на рынке создания постпроцессоров.
Заключение У человека прочитавшего данную статью может возникнуть вопрос. Зачем тратить деньги на создание постпроцессора для старого оборудования, если его все равно ждет модернизация или полная замена? Конечно, в этом есть доля истины, но если станок подлежит модернизации, меняется только стойка ЧПУ, а кинематика, что является основным в IMSpost, остается прежней, соответственно переделка постпроцессора под новую систему ЧПУ особого труда не составит. Если оборудование подлежит замене, то тут есть только один ответ - он же вопрос: «А когда это произойдет?». Если смена старого станка на новый в ближайший год не планируется, то постпроцессор вполне себя окупит. Ведь постпроцессор экономит самый главный показатель в разработке управляющей программы – это время… Плюс нельзя не отметить то, что используя один постпроцессор, можно работать с разными CAM-системами. А если использовать другой продукт Компании IMS Software Inc. - IMSconvert, то ранее написанные управляющие программы можно будет легко адаптировать под другой станок и другую систему ЧПУ… На этом позвольте мне завершить данную статью, целью которой был рассказ о возможностях универсального генератора постпроцессоров IMSpost. Так же позвольте сказать спасибо каждому человеку, прочитавшему данную статью…
| |||||||||
Design P.N.Latyshev |
|
| Copyright 1997-2009 г.г. Латышев П.Н. palarus@online.ru © СОЛОН-ПРЕСС Каталог САПР 2006, 2008-2009 |