Главная » CADmaster №4(44) 2008 » Машиностроение Unigraphics & Renishaw
Мудрая русская пословица «Семь раз отмерь, один раз отрежь» в ряде случаев может применяться с перестановкой последовательности действий измерения-отрезания: при производстве сложных и ответственных изделий необходим тщательный контроль геометрии и выполненных размеров, когда для получения достоверной информации необходимо проделать десятки, а то и сотни измерений. Вот и получается — «Один раз отрежь, сто раз измерь».
До появления контрольно-измерительных машин (КИМ) основным инструментом, позволявшим проверить правильность выполнения сложной пространственной геометрии были (а на многих предприятиях остаются и по сей день) шаблоны — плоские металлические эталоны ответственных сечений, контуров
Но иногда метод измерения непосредственно на станке может оказаться единственно доступным — скажем, когда производство передано на другое предприятие без передачи средств контроля или когда для проведения измерений на КИМ требуется сложная дополнительная оснастка или приспособление.
В похожей ситуации оказался автор этой статьи: требовалось представить заказчику результат обработки вентиляторной лопатки авиационного двигателя и показать соответствие полученной геометрии требуемым параметрам точности. В отсутствие шаблонной контрольной оснастки и при невозможности проведения измерений на КИМ было принято решение произвести контроль геометрии лопатки непосредственно на станке при помощи контактного щупа Renishaw OMP-100 (рис. 1).
(Небольшое отступление курсивом. Производитель щупа и конкретная модель указаны не в качестве рекламы — именно таким измерительным щупом был укомплектован фрезерный станок, на котором производилась обработка. Все изложенное ниже может быть применено к измерительным щупам других производителей и моделей.)
Получение управляющих программ для черновой, получистовой и финишной обработок лопатки производилось в пакете Unigraphics NX, поэтому вполне естественным было желание получить средствами Unigraphics и управляющую программу для измерительного щупа. Однако среди штатных инструментов модуля UGManufacturing таковой не оказалось, так что пришлось прибегнуть к созданию требуемого прототипа операции средствами программирования UGOpen.
Но прежде несколько слов о принципах работы триггерного измерительного щупа, которые были положены в основу разработанной стратегии измерения. После выбора измерительного щупа из магазина инструментов станка и подачи соответствующей команды активизации (для Siemens Sinumerik 840D — M19), щуп подводится к измеряемой поверхности и далее перемещается по команде
MEAS=1 G01 X Y ZA3 B3 C3 F
до контакта с изделием. Координаты центра шарика измерительного щупа в этот момент возвращаются системой управления (Siemens Sinumerik 840D), остальное — дело техники. Сами по себе координаты центра шарика малоинтересны, поэтому тут же пересчитываются на точку контакта. Для этого нужно знать нормаль к поверхности в точке контакта и радиус рубинового шарика измерительного щупа. Таким образом, получаем реальное положение измеряемой точки в пространстве. Остается высчитать погрешность относительно идеальной точки (с математической модели) и вывести эти данные в протокол замера. Вот эти задачи и были реализованы в операции, разработанной средствами UGOpen.
Как это работает?
Прежде всего средствами Unigraphics формируется операция типа MILL_USER (операция, в которой стратегия обработки определяется пользовательской функцией) (рис. 2). При этом безразлично, в каком виде операций (Planar, Fixed Contour, Variable Contour) будет создана эта операция — все перемещения инструмента-щупа контролируются внешней динамической библиотекой DLL, путь к которой указывается в параметрах операции как CAM Exit Name (рис. 3).
При нажатии кнопки User Parameters (Параметры пользователя) программисту-технологу будет предложено выбрать то сечение на поверхности лопатки (на рис. 3 выделено синим цветом), в котором требуется измерить необходимое количество точек. Как служебные параметры указываются рабочая подача измерения, дистанция безопасного перемещения над поверхностью изделия
Полностью процесс построения траектории представлен в видеоролике Mill_User_Operation.wmv, размещенном по адресу www.csoft.ru/go/unigraphics-renishaw-video.
В завершение программа создает файл протокола замера, выводит результаты в открытый файл и закрывает файл замера. Привожу для примера несколько строк из файла протокола:
Сечение А4 (корыто) A4_K
*** SECTION A4 KORYTO CSOFT-CHIRON *** MODEL POINT X=109.712024 Y=-75.746255 Z=-53.206439 REAL X=109.385011 Y=-74.3939572 Z= -54.806319 ERROR DIST FOR THIS POINT = 0.1200479149
Конечно, лучше один раз увидеть! По уже упомянутому адресу www.csoft.ru/go/unigraphics-renishaw-video вы найдете видеоролик probing2.wmv, снятый непосредственно в процессе измерения на станке (рис. 4).
Вернемся к пословице про семикратное измерение перед финальным отрезанием. Следующий пример (на сей раз реализованный в системе iTNC 430530 Heidenhain) лишний раз подтверждает ее справедливость.
Допустим, требуется изготовить паз (карман, окно) строго заданного размера (предположим — 20.00 мм), есть инструмент с номинальным диаметром (предположим — &216;10 мм). Казалось бы, всё ясно! Пиши программу с коррекцией на радиус инструмента, получай результат. Но вот незадача — инструмент в процессе работы изнашивается, его реальный диаметр меняется, да и непосредственно перед обработкой не всегда удается точно измерить истинный диаметр инструмента.
Как поступить? Этот пример не такое уж умозрительное упражнение, как может показаться на первый взгляд: задачку предложил один из заказчиков, для которого такая постановка была очень важной.
Решалась эта задача так. Паз (карман) предварительно обрабатывается без коррекции на радиус с припуском заведомо большим неизвестного нам отклонения истинного диаметра инструмента от реального: например, +0.20 мм (рис. 5). Реальный припуск, определяемый реальным диаметром инструмента, будет отличаться в большую или меньшую сторону.
Следующим шагом выполняется предварительный чистовой проход с заведомо известным (заданным) значением поправки на радиус, при этом траектория рассчитывается на номинальный контур с включением коррекции на радиус (рис. 6). Значение коррекции задается в событиях, определяемых пользователем (User Defined Events), и при обработке соответствующим постпроцессором приведет к вызову инструмента с указанным DR (в терминах Heidenhain).
2 Q7 = 0.123; FIRST PASS WITH DR = Q7 3 TOOL CALL 2 Z S7000 DR+Q7
А завершением операции будет измерение полученного паза и вычисление по результатам замера истинного значения поправки на радиус для выбранного инструмента. Для реализации этого этапа вводится более сложное UDE-событие, в котором указывается ряд параметров: центр паза, направление измерения, глубина измерения
Идея метода такова: инструмент произвел обработку с заданным значением DR, и (если это значение верное!) мы вправе ожидать, что получим в детали номинальный размер. Но, произведя замер измерительным щупом и сравнив результат с номиналом, оказываемся перед фактом, что из-за износа инструмента, неточного замера
Осталось выполнить последнее действие — еще раз вызвать только что завершившуюся программу, где в качестве параметра DR при вызове инструмента указать истинное (вычисленное) значение DR — конечно, постпроцессор сделает это автоматически! При этом оператор может даже и не узнать, что геометрические параметры инструмента изменились. Еще одно из достоинств предложенного решения — требуемый размер паза задается непосредственно в программе как одна из переменных. При необходимости его можно изменить перед выполнением программы — эдакое «параметрическое» фрезерование!
В представленном примере проводилась обработка паза с параллельными стенками, аналогично в постпроцессоре реализована обработка измерения и вычисления DR при фрезеровании отверстий и бобышек с применением 421 и 422-го циклов Heidenhain (рис. 8).
В завершение хотел бы сказать, что операции и постпроцессоры, созданные для систем управления станками Siemens и Heidenhain, могут быть реализованы и для других станков с иными системами управления (MAZAK, Fanuc
Скачать статью в формате PDF — 290.3 Кбайт |