Khach

Как Научится Писать Постпроцессоры?

117 posts in this topic


Господа! А никто не подскажет... Может ли ПМПост разделять выводимую УП на части, как Дактпост. Вставляя заголовки и т.п.

При разработке PM-POST отказались от таких функций, считая их архаизмом.

<noindex>http://narod.ru/disk/8821949000/2-tnc151F%...%D0%B8.opt.html</noindex>]]>

документация по павер милл на русском, описание работы, в ПДФ

Да не, похоже вы ссылку на пост для Heidenhain дали.

Share this post


Link to post
Share on other sites

Не-а, не разделяет :bleh: . По крайней мере я этого в настройках не видел.

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

Тады беда... Просто есть 2 станка со стойками, которые "понимают" только небольшими кусками. А дакпост не умеет считать всякие синусы и т.п. Посему хотелось перевести на пмпост... Сам не нашел такого разбиения... Думал народ как-то скриптами или еще чем сможет подсобить :smile:

Share this post


Link to post
Share on other sites

Тады беда...

Тады бейте траектории в МИЛЛе и будет Вам счастье. :smile:

Share this post


Link to post
Share on other sites

Тады бейте траектории в МИЛЛе и будет Вам счастье. :smile:

Угу... Лучше остаться на дакпосте, чем отлавливать в МИЛЛе до какой глубины должна быть каждая траектория. :smile:

Share this post


Link to post
Share on other sites

Угу... Лучше остаться на дакпосте, чем отлавливать в МИЛЛе до какой глубины должна быть каждая траектория. :smile:

Угу. И это единственная причина (разбивка УП), по которой я использую ДактПОСТ при написании постов для "ретро" стоек. Во всех остальных случаях - ПМ-Пост :smile: !

Share this post


Link to post
Share on other sites

А нам повезло у нас стойка Heidenhein iTNC 530.

Недавно обрабатывал деталь в 5-ти осях, размер программы был 140 МБ, кол-во кадров 4 млн.

И все ок.

Нарадоваться не могу. :)

P.S. Использую PM-POST 4700, раньше 4501 сп2.

Share this post


Link to post
Share on other sites

Не могли бы вы еще раз поделиться мануалом по PM-POST и Ductpost? Ссылки устарели.

Share this post


Link to post
Share on other sites
Насколько я помню, этот релиз я скачивал, но там только дистрибутивы PostProcessor 4800, а описание как в ней работать и пользоваться нет.

Share this post


Link to post
Share on other sites

Спасибо за мануалы!

Огромное спасибо!

Share this post


Link to post
Share on other sites

Спасибо всем большое, просто нереальное спасибо... в частности BrateloSlava! примного признателен... весь инет перерыл раза 2 причем)))

Share this post


Link to post
Share on other sites

ID: 56   Posted (edited)

ПРивет всем. при попытке постпроцессировать ПМ-пост выдает ошибку

error NCB0233: Can't reach desired tool direction ( Tool vector: X = 0.000; Y = -0.057; Z = 0.998)

Location:

response: Move Linear

object: MoveLinear, function: Engage

object: ToolpathMilling

object: Program

object: ProgramBuilderNC

record: #80 (5000 / 5)

object: CLDATAReader, function: ReadCLDATA

Команда : Move Linear

Подскажите поожалуйста пути решения.

ЗЫ 3 оси процессирует как по маслу, а вот больше не хочет уже(((

Edited by torrent.uf

Share this post


Link to post
Share on other sites

error NCB0233: Can't reach desired tool direction ( Tool vector: X = 0.000; Y = -0.057; Z = 0.998)

Лучше всего приложить пост и сессию.

А так, предположу, что желаемое направление инструмента не соответствует возможностям станка, описанным в кинематике.

Share this post


Link to post
Share on other sites

<noindex>http://rghost.ru/24125891</noindex> пост

<noindex>http://rghost.ru/24126041</noindex> сессия

ЗЫ постпроцессоры также использовать пытался стандартные.

Share this post


Link to post
Share on other sites

Ау, люди, помогите пожалуйста а? ну не особо я дружу пока с многоосевой, разбираюсь пока.

Share this post


Link to post
Share on other sites

Ау, люди, помогите пожалуйста а? ну не особо я дружу пока с многоосевой, разбираюсь пока.

Посмотрел, пост-то трехосевой!

Share this post


Link to post
Share on other sites

Появился вопрос.

Станок токарно - фрезерный, 5 осей. Одна ось токарная, вторая поворотная на шпинделе, вокруг У. Кинематика получается head-table.

Пост настроен , но без режима RTCP.

multiaxis coordinate transform = true

При этом при выводе обработки цилиндра в 4х координатах всё выдаёт правильно:

G16 X Y

(UOT,1, X45. , Y-170. , Z-443. )

N10 G91

N20 G0 G79 Z0

N30 T1 M6

N40 G300

N50 h1

N60 G0 G90 X915. Y0

N70 G0 M181 Z187,56 C0 B0

N80 S20000 M3

N90 G1 G91 F15000

N100 Z-52.414

N110 Z-5. F800

N120 Z.001 C-.839 F8000

N130 Z-.002 C-.926

N140 C-.925

N150 Z.003 C-.926

N160 Z-.002 C-.925

N170 Z.001 C-.926

N180 Z-.002 C-.925

N190 Z-.001 C-.926

N200 Z.004 C-.926

Но, если включаю режим RTCP

multiaxis coordinate transform = false

, то станок начинает вести себя как 5 координат head-head, т.е. вращает не только поворотную ось С, но ещё и начинает вращать голову вокруг токарной оси:

G16 X Y

(UOT,1, X45. , Y-170. , Z-443. )

N10 G91

N20 G0 G79 Z0

N30 T1 M6

N40 G300

N50 h1

N60 G0 G90 X915. Y0

N70 G0 M181 Z100. C0 B0

N80 S20000 M3

N90 G1 G91 F15000

N100 Z-52.414

N110 Z-5. F800

N120 Y.624 Z-.004 C-.839 F8000

N130 Y.687 Z-.017 C-.926

N140 Y.688 Z-.027 C-.925

N150 Y.687 Z-.035 C-.926

N160 Y.686 Z-.051 C-.925

N170 Y.685 Z-.059 C-.926

N180 Y.684 Z-.073 C-.925

N190 Y.683 Z-.082 C-.926

Та же участь меня постигла при попытке использовать PMPost. Всё тож самое: включаю режим RTCP, и начинает вести себя как 5 коодинат стол-стол.

Расскажите, пожалуйста, что нужно исправлять в работающем посте без режима RTCP, чтобы включить этот режим, и всё заработало правильно?

Какая логика при внесении этого изменения? Что не знаю ещё?

Share this post


Link to post
Share on other sites

станок начинает вести себя как 5 координат head-head, т.е. вращает не только поворотную ось С, но ещё и начинает вращать голову вокруг токарной оси:

Та же участь меня постигла при попытке использовать PMPost. Всё тож самое: включаю режим RTCP, и начинает вести себя как 5 коодинат стол-стол.

Расскажите, пожалуйста, что нужно исправлять в работающем посте без режима RTCP, чтобы включить этот режим, и всё заработало правильно?

Какая логика при внесении этого изменения? Что не знаю ещё?

Я не увидел у вас никакого дополнительного вращения. Или вы про то, что теперь появилось еще и перемещение по Y? Это логично, т.к. используется RTCP. Что смущает-то?

Share this post


Link to post
Share on other sites

Вопрос решил в PMPost.

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

Как заставить выводить команды G90 при первой смене инструмента и вывод координат в абсолютных значениях, а в остальных блоках G91 и вывод координат в приращениях.

Если ставить в свойствах Инкремент - да , то выводит всё в приращениях и наоборот.

Share this post


Link to post
Share on other sites

Вопрос решил в PMPost.

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

Как заставить выводить команды G90 при первой смене инструмента и вывод координат в абсолютных значениях, а в остальных блоках G91 и вывод координат в приращениях.

Если ставить в свойствах Инкремент - да , то выводит всё в приращениях и наоборот.

Настройки формата глобальны. Поэтому нужно искать другие пути. Например, создать дополнительно параметры IncX, IncY и т. д. Создать формат, копирующий формат Coordinates, привязанный к X, Y, и т. д. Для этого формата указать свойство "инкремент". Привязать параметры IncX и др. к новому параметру. В блоке вывода координат вместо X, Y... выводить IncX, IncY... Для этих параметров - "назначить" => значение параметра => указать соответствующий параметр. Попробуйте. Если не получится, то блок вывода перемещений привязать к скрипту, вычисляющему инкремент, и результат выводить в программу. В принципе, можно даже и без скрипта попробовать, создав новый параметр, а в блоке вывода для него указать "выражение", и руками ввести что-то типа "X -PrevX". Естественно, что параметр PrevX нужно предварительно создать, а следующей строкой блока вывода перемещения прописать присвоение этому параметру текущего положения.

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

Ну и, конечно же, интересно, зачем все это нужно.

Share this post


Link to post
Share on other sites

Ну и, конечно же, интересно, зачем все это нужно.

Одна из поворотных осей, которая стоит в координате С1, при команде С362 повернётся всего на 1 градус.

Поэтому настройщик говорит, выведи в приращениях, чтобы не париться.

Есть более простой путь?

Share this post


Link to post
Share on other sites

<noindex>http://rghost.ru/24406001</noindex>

В Постпроцессоре пытаюсь приделать 4 и 5 оси. подскажите что не так? постпроцессирую траеторию в 5 осях, вроде все нормально, ошибки не выдает, а координат дополнительных нет.

Share this post


Link to post
Share on other sites

В настройках опционного файла задаю опции:

При достижении угловых пределов: Reset Angles Only

Но в программе получаю отвод и реконфигурацию:

N970 Z51.27 C1.904

N980 Z51.272 C1.289

N990 Z51.27 B30.001 C0

N1000 C360. F15000

N1010 Z51.272 B30. C359.852 F5000

N1020 C358.73

N1030 Z51.271 C357.503

N1040 Z51.272 C356.89

Это глюк?

Share this post


Link to post
Share on other sites

Одна из поворотных осей, которая стоит в координате С1, при команде С362 повернётся всего на 1 градус.

Есть более простой путь?

Я не знаю, это у вас надо спросить :g:

Что за стойка? Посмотрите в документации, Heidenhain, например, имеет оба варианта поведения в такой ситуации.

Можно просто для оси С в постпроцессоре указать вывод остатка от деления на 360.

В настройках опционного файла задаю опции:

При достижении угловых пределов: Reset Angles Only

Но в программе получаю отвод и реконфигурацию:

N970 Z51.27 C1.904

N980 Z51.272 C1.289

N990 Z51.27 B30.001 C0

N1000 C360. F15000

N1010 Z51.272 B30. C359.852 F5000

N1020 C358.73

N1030 Z51.271 C357.503

N1040 Z51.272 C356.89

Это глюк?

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

В Постпроцессоре пытаюсь приделать 4 и 5 оси. подскажите что не так? постпроцессирую траеторию в 5 осях, вроде все нормально, ошибки не выдает, а координат дополнительных нет.

И не будет, пока в блоках вывода перемещений не добавите их для вывода.

Share this post


Link to post
Share on other sites

я так понял необходимо указать вывод формата "X Y Z B C" но параметров "В" "rotary B" нету в списке... что необходимо выбирать?, спасибо

Share this post


Link to post
Share on other sites

я так понял необходимо указать вывод формата "X Y Z B C" но параметров "В" "rotary B" нету в списке... что необходимо выбирать?, спасибо

Machine A, Machine B, Machine C

Share this post


Link to post
Share on other sites

Machine A, Machine B, Machine C

я подозревал, но не был уверен в правильности догадок. спасибо=)

Share this post


Link to post
Share on other sites

Постпроцессирование невозможно - Broken connection

Нашел на форуме эту тему, но ответа в ней не нашел.

PP 6.2, на лицензию не ругается, опциональные файлы редактируются и сохраняются, т.е. я подозреваю что сам PostProcessor работает корректно

opt файлы, о4 о4 о4 старые выводит без ошибок, на свои родные pmoptz и yf pmopt ругается

Или я ошибаюсь, потому что сам повермил для вывода использует DuctPost и файлы opt?

Дальше.

Пробовал создавать не nc, а cut файлы и запихивать их в PP, но при попытке пост процессирования ошибка:

error CR0000:

object: CLDATAReader, function: ReadCLDATA

Ещё

пробовал править файл через ductpost по описанному выше методу: удалил 2 пробела в коментах и при выводе опять "Постпроцессирование невозможно - Broken connection"

Итого 2 вопроса

1 почему POST processor ругается на cut файл

2 почему поле редактирования opt файла он перестал работать, ведь толком он не изменился

Сильно не пинайте, с вопросом постов столкнулся впервые

Share this post


Link to post
Share on other sites

Чтобы PMPost работал из под PowerMILL, нужно запутсить COM-register, экзешник находится там же где и запуск самого PMPost.

Ругается почему - не знаю, но судя по сообщению, вижу проблему со считыванием CL файла. Никогда с таким не сталкивался. Как Вы записывали cut файл?

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

Share this post


Link to post
Share on other sites

После более внимательного просмотра нашел COM-register. В версии 6.2 он выглядит: RegisterComServer.cmd

cut файл записываю, выбирая в параметрах тип записи CL-файл (при этом пробовал все возможные форматы)

В последнем вопросе ошибочка: не поле, а после) Что менял: В шапке сайта есть "R W E D" в виде комента. Я убрал пробелы - RWED. Больше ничего не трогал, решил проверить сработает изменение или нет. Закрыл txt, сохранив изменения, переименовал txt в opt и указал этот файл в PM. Результат Постпроц. невозможно Broken connection

Share this post


Link to post
Share on other sites

cut файл записываю, выбирая в параметрах тип записи CL-файл (при этом пробовал все возможные форматы)

А прмо из Милла почему не запускаете?

Share this post


Link to post
Share on other sites

А прмо из Милла почему не запускаете?

А так круче...)

Share this post


Link to post
Share on other sites

Не умею. Только начал разбираться. Раньше были все стойки одинаковые и пост к ним хороший - не было необходимости в постах разбираться.

Сегодня все переставил и PostPr 6.2 заработал как надо. Текущие проблемы решились!

Share this post


Link to post
Share on other sites

привет!

начинаю осваивать программирование в среде РМ.

соответственно возник вопрос по написанию поста в РМ-РОST. Прочитав изрядное количество сообщений к форума у меня

назрел достаточно наивный вопрос: "Реально ли самостоятельно написать пост к 5-оснику не прибегая к написанию

скриптов на Java или Basic"?

жду с нетерпением вашего ответа)

Share this post


Link to post
Share on other sites

К сожалению, вряд ли.

Share this post


Link to post
Share on other sites

благодарю вас!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.