Перейти к публикации

Создание постпроцессора на токарный станок в NX/Post Builder


avd

Рекомендованные сообщения

Уважаемые,

Необходимо в токарном постпроцессоре реализовать нарезание резьбы 2-мя способами.

В токарной операции нарезания резьбы (например THREAD_OD) есть переключатель Станок -> Использ. циклы станка (Встроенные).

Вопрос в студию: "В Post Buildere я не знаю как перехватить нажат переключатель Использ. циклы станка или нет?"

Под отладкой посмотрел какие события имеются. Ручками эти события не проблема подправить под себя, а вот как это сделать через PB?

Заранее спсб

Ссылка на сообщение
Поделиться на других сайтах


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

Может проще создать событие пользователя и его описать в Постпроцессоре.

В качестве примера могу предложить цикл резьбофрезерования для Sinumeric 840D, просто для токарки у меня подобного примера нет.

EVENT BL_CYCLE90

{

UI_LABEL "Фрезерование резьбы"

CATEGORY MILL DRILL

PARAM Cycl_DIATH

{

TYPE d

DEFVAL "48"

UI_LABEL "Наружный диаметр"

}

PARAM Cycl_KDIAM

{

TYPE d

DEFVAL "46.3762"

UI_LABEL "Внутренний диаметр"

}

PARAM Cycl_PIT

{

TYPE d

DEFVAL "2"

UI_LABEL "Шаг"

}

PARAM Cycl_CDIR

{

TYPE o

DEFVAL "G2"

OPTIONS "G3","G2"

UI_LABEL "Направление вращения"

}

PARAM Cycl_TYPTH

{

TYPE o

DEFVAL "INTERNAL"

OPTIONS "EXTERNAL","INTERNAL"

UI_LABEL "Тип резьбы"

}

}

Изменено пользователем GES
Ссылка на сообщение
Поделиться на других сайтах

Ну этот вариант могет быть, но я его приберегу на самый последний случай.

Есть вариант написать маленькую DLL и вызывать ее из TCL файла и потом как-то возвращать. Как пока не знаю.

Может кто подскажет, как обмениваться информацией между DLL в TCL?

Всех с наступающим НГ!

Ссылка на сообщение
Поделиться на других сайтах

Один из моих знакомых пользовался библиотеками какое-то время, хотя потом отказался от этого.

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

Выглядит примерно так :

#=============================================================

proc PB_CMD_dll { } {

#=============================================================

global user_dll

set user_dll [MOM_ask_env_var UGII_CAM_POST_DIR]user.dll

START $user_dll "start"

}

Можешь более подробно поинтересоваться у Ug_user, он любитель работать с библиотеками.

Может и поделится информацией.

Ссылка на сообщение
Поделиться на других сайтах

Как вызвать DLL из TCL я знаю. Вопрос как лучше передавать данные из DLL в TCL обратно. Есть вариант через файл, но лучше бы через переменную mom_чего-нибудь, но пока не пробовал.

Ссылка на сообщение
Поделиться на других сайтах

Была похожая задача по реализации циклов резьбофрезерования (нет в NX)

Создали событие пользователя, все нормально работает.

#---------------------------------------------------------------------------

#

# Event for zagotovka_1

#

EVENT zagotovka_1

{

POST_EVENT "zagotovka_1"

UI_LABEL "Резьбофрезерование внутреннее"

PARAM command_status

{

TYPE o

DEFVAL "Active"

OPTIONS "Active","Inactive"

UI_LABEL "Резьбофрезерование внутреннее"

}

PARAM X_param

{

TYPE d

DEFVAL "0.000"

UI_LABEL "Коорд.центра отверстия_X"

}

PARAM Y_param

{

TYPE d

DEFVAL "0.000"

UI_LABEL "Коорд.центра отверстия_Y"

и т.д все необходимые парметры цикла.

Ссылка на сообщение
Поделиться на других сайтах

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

1. Создал файл my_thread.tcl и поместил его в %UGII_BASE_DIR%\MACH\RESOURCE\POSTPROCESSOR

2. В проекте Постбилдера во вкладке Output Settings - Other options - Source User's TCL File вкл. - File Name указал my_thread.tcl

3. В файле описал четыре процедуры MOM_thread, MOM_start_of_thread, MOM_end_of_thread и MOM_lathe_thread

Соответственно MOM_thread вызывается когда переключатель Станок - Использ. циклы станка (Встроенные) ВКЛ, потом работает MOM_lathe_thread

MOM_start_of_thread работает когда переключатель Станок - Использ. циклы станка (Встроенные) ВЫКЛ, потом работает MOM_lathe_thread и еще несколько функций (подробно можно посмотреть в отладке).

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

Удачи

Ссылка на сообщение
Поделиться на других сайтах

Все из предложенных вариантов возможны были с постбилдером ... :rolleyes:

Родился какой-то новый - тоже неплохо ... :clap_1:

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • Limon2986
      Всем добрый день. Станок Litz CV 800 fanuc При смене инструмента, лапа вынимает инструмент из шпинделя, поворачивается для установки в барабан, вставляет немного и становится в свое положение. Инструмент падает. При осмотре, обнаружил что лапа приходит к магазину немного дальше, инструмент не до конца входит, потому и выпадает. Как лапу вернуть немного назад? Соориентировать?
    • Orchestra2603
      Соррян за оффтопик..   Федор, вы меня простите, пожалуйста... Я когда читаю ваши подобные сообщения, у меня четко перед глазами формируется образ такого совдеповского инженера, с очками в такой толстенной оправе, с логарифмической линейкой, цикрулем и большим таким холстом бумаги с чертежами, который начинает рабочий день под советский гимн и восславляет коммунистическую партию...   Всегда полезно быть открытым новому. Понимаю, что конечно хочется обратно в счастливую молодость, в те самые золотые годы, и возможно это вас как-то отталкивает от современных идей.   Некоторые вещи придумываются просто как результат гимнастики ума, это правда. Но это и не плохо. Кто-то кроссворды решает, кто-то придумывает мат мадели в надежде отловить какой-то эффект, превозойти то, что другие модели не могли. Может, этот эффект не особо влияет на глобальный порядок вещей, но из совокупности таких маленьких незначительных шажочков и строится научный прогресс. Так что я решительно против ваших попыток обесценить чьи-то амбиции попытаться выйти за рамки и попробовать что-то новое.   Да, и в принципе - это не самое плохое занятие на свете. К сожалению, часто людям доставляет удовольствие куда более бесполезные или даже вредные вещи.
    • gudstartup
      ну за границу ездил и досмотр при выезде обязателен у него не один а с одним станком это не производство у многих даже в гаражном хозяйстве больше
    • aalex_b
      Добрый день. Саму систему я поднял. Не знаю куда вводится центр стола, но предполагаю в 960,хх параметр для Y и для X А поворот головы куда вносят: при горизонтальном и вертикальном положении. Так же методика измерения интересует  HDD ушел физически: BIOS его не видит и при включении питания свист, как от болгарки.
    • Flint_ru
      Добрый день!  Подскажите, можно ли в WB задать нагрузку двухмерной таблицей, не прибегая к всавке apdl и если можно, то как?  В apdl  просто создается таблица, например, один параметр Time, другой координата. В итоге можно для каждого шага задать свою нагрузку, зависящую от координаты.  В WB можно выбрать  tabular, но есть возможность выбрать только одну независимую переменную. Спасибо.
    • Killerchik
      Вы уверены? Я не знаю, на сколько дотошна на вывоз китайская таможня. Судя по идущим посылкам - совершенно не дотошна.   СОЖ мы себе везли (которую по моей дурости купили, думая что привезти будет легко) через 2 промежуточные страны страны. Что-то более стрёмное, с малейшей электроникой, едет через 3. Это типа прекрасная новая реальность, добро пожаловать.   Со станком не случится, а вот с заказом может случится много чего - не успеть к выставке, не получить инвестора. Производства бывают разные - какая-то конкретная деталь может быть сделана на каком-то одном имеющемся станке, может там отверстие глубокое, может габарит большой. Да может просто у человека один станок, и всё! Что он теперь, ненормальный?
    • Jesse
      @Fedor Успокойтесь. Никто тут не собирается отказываться от теории сплошности
    • Shura762
      Вопрос из разряда "Достало" как сделать в Словаре ширину колонок больше ПОСТОЯННОЙ! уже устал двигать каждый раз. Это первый вопрос. Второй - при "Сброс настроек.." Словарь принимает вид из поставки, где кроются файлы для восстановления, хочу заменить и забыть. Спасибо заранее. И еще вдогонку, при редактировании содержимого Словаря или создания нового используется Шрифт "старый" как изменить на "новый" который в ТФ по умолчанию.
    • Maik812
      Хочешь не хочешь а сортировать по содержимому и искать в нем текст приходится..  Есть правильные конвертеры просто. Но вот бывает что не та кодировка или не так правильно она оформлена и не понимает. Сверху абракадабра в слове "формат" Солид 2010 кажется, а ниже пересохранен в новее версии или наоборот.. Там конвертер x2doc , он "на лету" переводит пдф в текстовик и регулярным выражением вытаскивает "содержимое" в колонку . Поиск текста в пдф тоже так же делается. А содержимое колонки ТС, можно уже одним кликом по команде в EXEL вставить.
    • MagicNight
      Добрый день! Купили фрезерный станок с ЧПУ со стойкой FANUC Series 0i-Model F Plus. Имею не большой опыт данной стойки. Привязали десять инструментов относительно стола станка (т.е стол станка Z=0) Сейчас принесли приспособление которое имеет высоту 50мм. Хотим привязать весь инструмент от приспособления. Подскажите, как это сделать быстро, чтобы не вносить изменения в корректор на каждый инструмент. Пролистал книги в электронном варианте, бегло, не нашел. А уже нужно делать заказ.
×
×
  • Создать...