DJ Astro

G-POST, много вопросов. Хочется понять логику работы.

389 posts in this topic

:help:

При чтении данных из CL-файла пост считает число 0.9999971878 единицей. Из-за этого все дальнейшие вычисления идут неправильно.

Как это исправить? Как увеличить число десятичных знаков, использующихся в вычислениях через FIL? 

Share this post


Link to post
Share on other sites


22 часа назад, DJ Astro сказал:

:help:

При чтении данных из CL-файла пост считает число 0.9999971878 единицей. Из-за этого все дальнейшие вычисления идут неправильно.

Как это исправить? Как увеличить число десятичных знаков, использующихся в вычислениях через FIL? 

Разобрался. Смутило то, что в LST параметр, значение которого должно быть 0.9999971878, выводится как равный единице. Но в вычислениях всё же используется точное значение параметра, и вычисления идут правильно. А ошибка работы поста появлялась на этапе проверки логических условий, где параметр с таким значением сравнивается с единицей. 

Вопрос решился с помощью CONTRL/TOLER,IF,t.

Share this post


Link to post
Share on other sites

                             Добрый день Уважаемый DJ Astro!

Еще раз внимательно перечитал Вашу полемику с Уважаемым товарищем  . И вот какие у меня появились вопросы.

 LxCoder утверждает, что для постпроцессора 3+2 нет необходимости использовать обработчик CAMERA. Вы же утверждаете, что это - просто необходимо. Я поддерживаю Вас, в части касающейся, расчета углов разворота новой системы координат. Или углов Эйлера. Для того чтобы Вам было понятно - это определение  в НН SPATIAL PLANE и CYCLE800 в Sin840D. Недавно узнал, что в FANUC - это G68.2.

Так вот задача "Планеризации" разделяется на две части:

    1. Расчет углов для определения наклонной плоскости;

    2. Расчет машинных углов. То есть углов поворота рабочих органов станка. Коими могут быть головы или столы. Особую сложность представляют углы с нутацией.

Первую часть задачи Вы решили! С помощью Вашего обработчика CAMERA мы рассчитываем углы поворота новой системы координат. И пока во всех случаях углы рассчитываются  корректно. Правда все-таки есть сомнения по поводу устойчивости алгоритма на границе передней и задней полусфер детали. Особо это касается случая с 6 осевой обработкой, или правильнее сказать 1+5. Сначала, доворот по оси В (вдоль Y), а затем расчет поворотной головы с осями А и С.

Но в нашем случае необходимо еще и рассчитать машинные углы. Для определения SPATIAL PLANE нет необходимости в расчете машинных углов, так как высокоуровневая  функция Хайдена - САМА РАССЧИТЫВАЕТ ЭТИ УГЛЫ, аналогично и с CYLCE800 в Sin840D. Но у нас, по непонятной причине изготовитель станка не предоставляет файл с описанием кинематики ($TC_CARR1-17 для Siemens), в связи с чем мы вынуждены подавать в УП ЧПУ конкретно два угла поворота рабочих органов станка, после поворота системы координат, с помощью TRANS -> AROT. Я предполагаю, что у Вас в VERICUT существует корректно настроенный станок с кинематикой, по этой причине Вы не заморачиваетесь с расчетом станочных углов.

... Теперь по поводу неиспользования обработчика , на котором настаивает товарищ LxCoder. Как Вы знаете в  GPOST v6.6 добавлена новая функция расчета углов Эйлера и машинных углов DATA/CAM,1-2-3. Так вот мои "исследования" показали, что корректно, с помощью этой функции, можно определить машинные углы, только по функции DATA/CAM,3 с обработкой FIL на GOTO. То есть с помощью положения точки конца и разложения орта оси инструмента.  Попытка вычислить машинные углы через функцию DATA/CAM,1 (матрица CAMERA) приводят к результатам, когда углы отличаются от корректных на 180, 270 градусов, в различных ситуациях. Мы так и не смогли определить закономерность, когда нужно учитывать эту разность.

... И наоборот, когда БЕЗ ВКЛЮЧЕНИЯ ОБРАБОТЧИКА CAMERA, функция DATA/CAM,3 (точка+вектор) выдавала ВСЕГДА КОРРЕКТНЫЙ РЕЗУЛЬТАТ. Кроме положений на границе  передней и задней полусфер. Это зона неопределенности, которую необходимо разрешать, принудительно назначая машинные углы из конкретных углов Эйлера. А если включить обработчик CAMERA, то углы обнуляются, что вполне естественно. 

       Так вот вопрос - как Вы справляетесь с проблемой - в одном ПОСТЕ рассчитать и углы Эйлера и машинные углы? Или, может быть, у Вас не стоит проблема в расчете машинных углов.

       А если это сообщение прочтет LxCoder, то хотелось бы услышать и его мнение.

 

Share this post


Link to post
Share on other sites
В 18.06.2018 в 09:03, Павел Ишмулкин сказал:

 LxCoder утверждает, что для постпроцессора 3+2 нет необходимости использовать обработчик CAMERA...

...

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

Товарищ LxCoder ничего не утверждает и, уж тем более, не навязывает. Делайте как вашей душе угодно, и как Вам понятнее... Нравится изобретать велосипед заново - дело Ваше. Есть косой десяток способов сделать одно и то же.

 

В 18.06.2018 в 09:03, Павел Ишмулкин сказал:

Или, может быть, у Вас не стоит проблема в расчете машинных углов.

Именно. Я половины не понял, что вы понаписали и для чего вам все эти фельдиперсовые функции. Углы можно рассчитать один из другого - абсолютно любые, если понимать, что хочется получить на выходе. В G-Post математический аппарат с большим количеством параметров, настроек - он вполне достаточен (по моему личному мнению) для успешного решения 99% реальных задач. Для 1% скорее всего придется использовать некоторые свои формулы преобразования (например, для станков с не вполне обычной геометрией расположения осей, например, как в DMU 160, где угловая голова расположена под 45 градусов к оси Z...).

Share this post


Link to post
Share on other sites

Спасибо за ответ, Уважаемый товарищ LxCoder (пока еще не привык обращаться не по имени отчеству, а к нику). С момента публикации последнего поста, мы нашли способ вычисления машинных углов (с нутатором). Из CAMERA забираем два столбца: предпоследний - это разложение орта ОСИ инструмента, а последний - это координаты кончика инструмента. Формируем из этих чисел POINT и VECTOR, вызываем функцию DATA/CAM,3,POINT,VECTOR и получаем искомые машинные углы А и С. Опять же на полюсах, где возникает сингулярность, назначаем значения углов принудительно. То есть для программирования обработки 3+2, мы все углы вычисляем из , CAMERA.

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

Share this post


Link to post
Share on other sites
В 20.06.2018 в 09:17, Павел Ишмулкин сказал:

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

На здоровье. Вот уж не знал, что на что-то важное намекнул :))

Share this post


Link to post
Share on other sites

А намек был простой, (повторюсь) я из CAMERA забрал вектор оси инструмента... Вы как-то обмолвились, что все углы считаете из GOTO  c вектором и начальной системой координат. Вот я и нашел способ определения машинных углов, используя DATA/CAM,3.

Share this post


Link to post
Share on other sites
В 18.06.2018 в 09:03, Павел Ишмулкин сказал:

   Так вот вопрос - как Вы справляетесь с проблемой - в одном ПОСТЕ рассчитать и углы Эйлера и машинные углы? Или, может быть, у Вас не стоит проблема в расчете машинных углов.

Машинные углы не рассчитываю. За меня это делают циклы PLANE SPATIAL и 800 как в реальных станках, так и в VERICUT :)

 

В 22.06.2018 в 06:16, Павел Ишмулкин сказал:

я из CAMERA забрал вектор оси инструмента... Вы как-то обмолвились, что все углы считаете из GOTO  c вектором и начальной системой координат. Вот я и нашел способ определения машинных углов, используя DATA/CAM,3.

Функцию DATA/CAM не использовал. В мануале G-POST, кстати, описана разница между DATA/CAM,1 и DATA/CAM,3 (почему у Вас и получались результаты, когда углы отличаются от корректных на 180, 270 градусов, в различных ситуациях).
Вектор оси инструмента всё равно откуда брать - из CAMERA или из GOTO, при 3+2 они одинаковы. По сути функция DATA/CAM,3 - это то же самое, что и POSTF(13) для кадра GOTO/X,Y,Z,I,J,K. Просто раньше нужно было писать конструкцию из нескольких строк и функций, чтобы прогнать GOTO через пост "в режиме симуляции" (без вывода кадра с координатами в программу) для вычисления углов поворотных осей с учётом кинематики станка. А теперь разработчики свели это всё в одну однострочную команду.

 

Share this post


Link to post
Share on other sites

Уважаемые Господа! При 4-х осевой обработке при сверлении нескольких подрят отверстий цикл сверления каждый раз отменяется, поворачивается ось, а потом заново этот цикл описывается:

N6S1200M3
N7G1G43X62.Y0.Z60.H1M8F7000.A40.
N8G81G98X62.Y0.Z46.5R49.F40.A40.
N9G80
N10G1Z60.F7000.
N11X55.A0.
N12G81G98X55.Y0.Z46.5R49.F40.A0.
N13G80
N14G1Z60.F7000.
N15X62.A-90.
N16G81G98X62.Y0.Z46.5R49.F40.A-90.
N17G80

 

Можно как-либо избежать этого? 

 

N10G1Z60.F7000.
N11X55.A0.
N12G81G98X55.Y0.Z46.5R49.F40.A0.
N13X62.Y0.A-90.
N17G80

 

И может кто подскажет как сделать?

В 29.11.2016 в 10:50, fenics555 сказал:

При жестком нарезании резьбы метчиком в строке оборотов необходимо вставить М29, но я тоже так и не нашел где это.
Может кто подскажет что можно сделать?

Share this post


Link to post
Share on other sites

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

Просканить вперёд весь шаг обработки в поисках циклов, сохранить все точки из "скобок" CYCLE / DRILL ........... CYCLE / OFF. Вывести первый цикл и дальше в него добавить сохранённые точки. Добавить проверку на одинаковость всех циклов в шаге. 

 

С М29 так же. В CIMFIL/ON, SPINDL cканировать шаг обработки вперёд в поисках цикла нарезания резьбы. Если есть - добавить в вывод оборотов М29.

Share this post


Link to post
Share on other sites
1 час назад, DJ Astro сказал:

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

Просканить вперёд весь шаг обработки в поисках циклов, сохранить все точки из "скобок" CYCLE / DRILL ........... CYCLE / OFF. Вывести первый цикл и дальше в него добавить сохранённые точки. Добавить проверку на одинаковость всех циклов в шаге. 

Честно говоря я вообще не разбирался с FIL, нет ни желания ни возможности. По крайней мере пока.

1 час назад, DJ Astro сказал:

С М29 так же. В CIMFIL/ON, SPINDL cканировать шаг обработки вперёд в поисках цикла нарезания резьбы. Если есть - добавить в вывод оборотов М29.

Тут, я думаю, вообще 3 строчки... Будем ждать доброго человека, который откликнется.

Еще такой вопрос: 

есть станок, у которого 4-ая ось не разжимается в автоматическом режиме. В G-post есть управление зажатием/разжатием осей, но при выводе УП идет разжатие-поворот-зажатие и т.д., т.е. непрерывного фрезерования не получается. В самом посте уже все галки перетыкал, разницы никакой. Как с этим бороться?

Share this post


Link to post
Share on other sites
В 28.06.2018 в 12:25, DJ Astro сказал:

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

Просканить вперёд весь шаг обработки в поисках циклов, сохранить все точки из "скобок" CYCLE / DRILL ........... CYCLE / OFF. Вывести первый цикл и дальше в него добавить сохранённые точки. Добавить проверку на одинаковость всех циклов в шаге. 

 

С М29 так же. В CIMFIL/ON, SPINDL cканировать шаг обработки вперёд в поисках цикла нарезания резьбы. Если есть - добавить в вывод оборотов М29.

1. В NCL сделано все очень даже правильно, а именно для того, чтобы пользователь мог воткнуть процедуру пересчета смещения СК, если деталь оказывается не на оси вращения стола, и если УЧПУ не обладает функцией автоматического слежения (как у Фануков, например)... Для этого отменяется предыдущий цикл и выводится новый вектор инструмента. Поэтому особенного смысла в этой манипуляции (кроме незначительного сокращения объема программы как бы и нет. Помимо этого появляется возможность не сделать нормальную деталь (опять же, если наладчик не удосужился ее выставить ровно по оси вращения))

 

С М29 можно не сканить CIMFIL/ON,SPINDLE... Достаточно воткнуть что-то типа:

CIMFIL/AT,CYCLE,TAP 

      DMY=POSTF(20)
      SPD=POSTF(1,2,10)
      POSTN/OUT,M,29,S,SPD $$ ну или что-то другое...
      DMY=POSTF(21)

      DMY=POSTF(13)

CIMFIL/OFF

 

 

Share this post


Link to post
Share on other sites
20 часов назад, LxCoder сказал:

Поэтому особенного смысла в этой манипуляции (кроме незначительного сокращения объема программы как бы и нет.

А зачем вообще тогда циклы? Наверно оператору куда удобнее править режимы/глубины в одном кадре, не правда ли?

 

 

Share this post


Link to post
Share on other sites
37 минут назад, fenics555 сказал:

А зачем вообще тогда циклы? Наверно оператору куда удобнее править режимы/глубины в одном кадре, не правда ли?

 

 

Согласен, но и то что я описал, тоже имеет место быть. Так что здесь каждому решать, что же лучше - универсальность или краткость. Я и сам, честно сказать, по разному всегда делаю - где-то все отверстия запихиваю в один цикл, а где-то разбиваю на разные, в зависимости от ситуации, точности базирования, приспособления, станка и т.п.

Share this post


Link to post
Share on other sites
15 часов назад, LxCoder сказал:

Так что здесь каждому решать, что же лучше - универсальность или краткость.

Мне все же кажется, что тут программный косяк! Именно в последовательности (считай в ГОТО) должно определяться группировать сверления по глубинам для вывода нормальных циклов, или по кратчайшему пути для 4-5 осевой обработке,а дальше,при любых вариантах, коль встречаются одинаковые условия сверления - собирать их в один цикл в ГОТО. 

А не в Гпосте простыни писать!

 

15 часов назад, LxCoder сказал:

Я и сам, честно сказать, по разному всегда делаю - где-то все отверстия запихиваю в один цикл, а где-то разбиваю на разные, в зависимости от ситуации

У нас на это влияет массовость: на 10 деталей и так сойдет, а на 400 приходится ручками...

Share this post


Link to post
Share on other sites
5 часов назад, fenics555 сказал:

Мне все же кажется, что тут программный косяк! Именно в последовательности (считай в ГОТО) должно определяться группировать сверления по глубинам для вывода нормальных циклов, или по кратчайшему пути для 4-5 осевой обработке,а дальше,при любых вариантах, коль встречаются одинаковые условия сверления - собирать их в один цикл в ГОТО. 

А не в Гпосте простыни писать!

    Вы прочитайте свой начальный пост, в котором вы задаете вопрос. Там весьма конкретно написано про 4-х осевое сверление. И Крео здесь делает все как нужно - я уже объяснил для чего так. Если хотите объединить точки сверления при 5-осевом (4-х осевом - неважно) - это должен делать пост, как говорится "под вашу ответственность". Крео дает избыточные данные для этого - не беда - отслеживайте, отсекайте, сортируйте. Но они от своей ж.. проблему отвели. Вот если бы этих данных не было, а были бы, например, отверстия, выполненные на одинаковой глубине, к примеру с использованием команд "ROTATE/BAXIS, ..." , "ROTATE/CAXIS, ... " или AAXIS - было бы все несколько иначе. Но логика системы выстроена через управление вектором оси инструмента - и это правильная логика, универсальная, не связанная с конфигурацией и кинематикой конечного оборудования.

    Если вы делаете простое 3-х осевое сверление, то в этом случае Крео не всегда разбивает на разные группы отверстия, различающихся по глубине сверления. И тогда некачественные посты выводят все в один цикл. И, соответственно, сверлят отверстия на одинаковую глубину вместо разных. Хотя и этого можно избежать, сгруппировав отверстия вручную через PICK_ORDER. Но ведь и не всегда заметишь, пока деталь не сделаешь:)

1 person likes this

Share this post


Link to post
Share on other sites

... Может плохо искал, но в ветке VERICUTне нашел ничего похожего на свою проблему. Но в этой ветке я уже почерпнул много чего для себя, поэтому вопрос к DJ Astro!

Столкнулся с проблемой симуляции в VERICUT станка РАМА, у которого помимо оси Z существует еще ось V, которая двигает поворотный стол, навстречу оси Z, которая "вылазит" ползуном из колонны. Опуская то, что в самой Z еще присутствует ось W - удлинение шпинделя...) вопрос:

       В общем, без применения перемещения по V, все работает как надо, перемещаю G54 по XYZ (TRANS/ATRANS), поворачиваю вокруг ABC (ROT/AROT), поворачиваю стол по В, поворачиваю головы по АС -  Все на месте, все отрабатывает как надо,... но как только необходимо отодвинуть или пододвинуть стол, (команда V1000/V-1000), то все "съезжает" по Z, на величину этого смещения. Попытка, после смещения добавить TRANS V-1000, приводит к тому, что  "Нуль приводной точки" смещается из "своего" места, а обработка так и остается удаленной на смещение V1000.... Как-то давно в примерах VERICUT (display_dpz_wz_machine.vcproject), нашел похожую ситуацию, правда для FANUC. Там ось W "вытягивалась" из шпинделя, а компенсация выполнялась смещение системы координат по G52 Zппп. Попробовал у себя, вроде результат получил, НО:

     1. В реальной УП такой компенсации нет;

     2. Нет уверенности, что такая компенсация отработает, когда ось Z системы координат будет развернута, относительно машинной СК;

     Отсюда вопрос? Есть ли в VERICUT возможность компенсировать перемещения оси V ?????????

Share this post


Link to post
Share on other sites
3 часа назад, Павел Ишмулкин сказал:

... Может плохо искал, но в ветке VERICUTне нашел ничего похожего на свою проблему. Но в этой ветке я уже почерпнул много чего для себя, поэтому вопрос к DJ Astro!

Столкнулся с проблемой симуляции в VERICUT станка РАМА, у которого помимо оси Z существует еще ось V, которая двигает поворотный стол, навстречу оси Z, которая "вылазит" ползуном из колонны. Опуская то, что в самой Z еще присутствует ось W - удлинение шпинделя...) вопрос:

       В общем, без применения перемещения по V, все работает как надо, перемещаю G54 по XYZ (TRANS/ATRANS), поворачиваю вокруг ABC (ROT/AROT), поворачиваю стол по В, поворачиваю головы по АС -  Все на месте, все отрабатывает как надо,... но как только необходимо отодвинуть или пододвинуть стол, (команда V1000/V-1000), то все "съезжает" по Z, на величину этого смещения. Попытка, после смещения добавить TRANS V-1000, приводит к тому, что  "Нуль приводной точки" смещается из "своего" места, а обработка так и остается удаленной на смещение V1000.... Как-то давно в примерах VERICUT (display_dpz_wz_machine.vcproject), нашел похожую ситуацию, правда для FANUC. Там ось W "вытягивалась" из шпинделя, а компенсация выполнялась смещение системы координат по G52 Zппп. Попробовал у себя, вроде результат получил, НО:

     1. В реальной УП такой компенсации нет;

     2. Нет уверенности, что такая компенсация отработает, когда ось Z системы координат будет развернута, относительно машинной СК;

     Отсюда вопрос? Есть ли в VERICUT возможность компенсировать перемещения оси V ?????????

Павел, лично мне кажется, что этот вопрос для ветки Vericut... Переадресуйте вопрос туда, там точно есть люди, которые Вам помогут.

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

Кроме того, вы описываете, как для симуляции станка в Vericut с контролом FANUC использовалась компенсация смещения через команду G52. У вас (судя по командам. которые вы приводите выше) стойка Sinumerik. Аналог G52 на Sinumerik - это TRANS/ATRANS - чем они Вас не устраивают?

В конце концов, опишите, что происходит на самом станке при смещении по осям V,W? СК остается на месте или тоже смещается и требует компенсации? Нужно бы поподробнее чуток. А Верикат можно научить хоть вприсядку танцевать по любой из команд, но ведь главное  - соответствие моделируемого станка реальному его  поведению.

 

Share this post


Link to post
Share on other sites

Павел, выкладывайте проект Вериката, так будет проще разбираться с вопросом. И попросите Модератора перенести тему в соответствующий раздел. 

Share this post


Link to post
Share on other sites

Вот это оперативность:)

... Сходил сегодня к наладчику, он меня успокоил. Оказывается на самом деле компенсацию ДВИЖЕНИЯ соосных оси Z любых других осей, необходимо корректировать смещением ATRANS Znnn, как в примере с FANUC'ом.

... Просто в программе которую мне дали, как эталон, такой компенсации не было, это и ввело в заблуждение. Поэтому вопрос снимается. Спасибо за ответы!!!

Share this post


Link to post
Share on other sites

Прошу помочь с выводом охлаждения М8 в определенном месте.

  1. После смены инструмента с новой строки.
  2. После первого рабочего движения по Z.

Перед коррекцией на длину инструмента ввести G1 F400 и после выдержку по времени G4 P4

 

Вывод по умолчанию

Правки, вносимые вручную

N245 G49

N250 T9 M6

N255 G54

N265 S3800 M3

N270 G0 X25.6255 Y-25.65 M8

N275 G43 Z5. H9

N280 G1 X15.35 Z2.8159 F400.

N285 Y-25.35 Z2.7521

N245 G49

N250 T9 M6

N251 M8

N255 G54

N265 S3800 M3

N270 G0 X25.6255 Y-25.65

N271 G1 F400

N275 G43 Z5. H9

N176 G4 P4

N280 G1 X15.35 Z2.8159 F400.

N285 Y-25.35 Z2.7521

 

И еще вариант, как ввести М8 после первого рабочего движения по Z

 

 

ТЗ G-Post.jpg

Share this post


Link to post
Share on other sites
В 26.07.2018 в 10:46, Z@K сказал:

Прошу помочь с выводом охлаждения М8 в определенном месте.

Стандартными средствами

5b5adfa9a36b3_.thumb.PNG.2a00485f7ed6d9421ca2fbe441711523.PNG

Share this post


Link to post
Share on other sites

Этот вариант я пробовал но это не то.

Смысл в том что бы охлаждение включалось по Z на рабочей подачи G1. Что бы оператору было видно туда  ли едет инструмент.

G-Post выводит в порядке появления команд в CL-Data, которую выводит CREO. Изменить порядок вывода самим постпроцессором мне не удалось. Нужно писать несколько процедур поиска, блокировки вывода и т.д.

Но этого я не совсем понимаю как сделать.

Share this post


Link to post
Share on other sites
В 26.07.2018 в 10:46, Z@K сказал:

Прошу помочь с выводом охлаждения М8 в определенном месте.

  1. После смены инструмента с новой строки.
  2. После первого рабочего движения по Z.

Прочитай весь пост , возможно Вам поможет эта подсказка.

 

 

Share this post


Link to post
Share on other sites
В ‎26‎.‎07‎.‎2018 в 10:46, Z@K сказал:

Прошу помочь с выводом охлаждения М8 в определенном месте.

  1. После смены инструмента с новой строки.
  2. После первого рабочего движения по Z.

Перед коррекцией на длину инструмента ввести G1 F400 и после выдержку по времени G4 P4

 

Вывод по умолчанию

Правки, вносимые вручную

N245 G49

N250 T9 M6

N255 G54

N265 S3800 M3

N270 G0 X25.6255 Y-25.65 M8

N275 G43 Z5. H9

N280 G1 X15.35 Z2.8159 F400.

N285 Y-25.35 Z2.7521

N245 G49

N250 T9 M6

N251 M8

N255 G54

N265 S3800 M3

N270 G0 X25.6255 Y-25.65

N271 G1 F400

N275 G43 Z5. H9

N176 G4 P4

N280 G1 X15.35 Z2.8159 F400.

N285 Y-25.35 Z2.7521

 

И еще вариант, как ввести М8 после первого рабочего движения по Z

 

 

ТЗ G-Post.jpg

Выкладывайте свой пост, поможем.

Share this post


Link to post
Share on other sites
20 часов назад, Z@K сказал:

А вы не могли бы приложить хотя бы один пример рабочей программы с циклами сверления? У меня не получается вывести ни одной УП, где есть сверление - пост попросту не работает. Если весь "огород" с секцией CYCLE не нужен, так проще ж его исключить. В мануале на станок M700 Mitsubishi прописан практически стандартный Fanuc'овский цикл. И если на вашем станке все то же, что и в мануале, то, я с вашего позволения, привел бы это в хоть какой-то порядок... А сейчас я просто не могу понять - нужно ли это все? 

Share this post


Link to post
Share on other sites

ID: 310   Posted (edited)

В приложении 1 фаил это с моего поста вывод. Второе УП это вывод с поста написанного на NCpost.

Третий фаил это сама управляющая программа.

m_700_4axis_op010.ncl.7

m_700_4axis_op010__c поста УП.tap

m_700_4axis_po010_origen_Другой пост.tap

 

29 минут назад, LxCoder сказал:

А вы не могли бы приложить хотя бы один пример рабочей программы с циклами сверления? У меня не получается вывести ни одной УП, где есть сверление - пост попросту не работает. Если весь "огород" с секцией CYCLE не нужен, так проще ж его исключить. В мануале на станок M700 Mitsubishi прописан практически стандартный Fanuc'овский цикл. И если на вашем станке все то же, что и в мануале, то, я с вашего позволения, привел бы это в хоть какой-то порядок... А сейчас я просто не могу понять - нужно ли это все? 

Буду вам очень благодарен за помощи и в этом вопросе по организации Циклов.

А то не очень пока разобрался в этом вопросе.

Edited by Z@K

Share this post


Link to post
Share on other sites
6 минут назад, Z@K сказал:

В приложении 1 фаил это с моего поста вывод. Второе УП это вывод с поста написанного на NCpost.

Третий фаил это сама управляющая программа.

m_700_4axis_op010.ncl.7

m_700_4axis_op010__c поста УП.tap

m_700_4axis_po010_origen_Другой пост.tap

"И если на вашем станке все то же, что и в мануале, то, я с вашего позволения, привел бы это в хоть какой-то порядок... А сейчас я просто не могу понять - нужно ли это все?"

Буду Вам очень благодарен за помощи с циклами. Сам тоже не очень в этом разобрался.

Буду вам очень благодарен за помощи и в этом вопросе по организации Циклов.

А то не очень пока разобрался в этом вопросе.

Ясно. Ок, сделаем, как в инструкции. Попробуете потом на станке, только аккуратно.

Share this post


Link to post
Share on other sites

 

4 часа назад, Z@K сказал:

В приложении 1 фаил это с моего поста вывод. Второе УП это вывод с поста написанного на NCpost.

Третий фаил это сама управляющая программа.

m_700_4axis_op010.ncl.7

m_700_4axis_op010__c поста УП.tap

m_700_4axis_po010_origen_Другой пост.tap

 

Буду вам очень благодарен за помощи и в этом вопросе по организации Циклов.

А то не очень пока разобрался в этом вопросе.

Вроде готово, проверяйте

uncx01.f10

uncx01.p10

uncx01.s10

m_700_4axis_op010.tap

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
1 час назад, Z@K сказал:

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

Впишите нужные оси после G53

2018-08-07_20-06-09.png

Share this post


Link to post
Share on other sites

Я попробовал но результата нету.

Просто вывело значения или я что-то не так сделал?

 

Я в примерах находил такой Макрос но он тоже не работает

LIMITS=MACRO

  DMY=POSTF(2,1,2012,1)

  DMY=POSTF(2,3,479,1)

  X_MN= POSTF(1,3,665)

  X_MX= POSTF(1,3,666)

  Y_MN= POSTF(1,3,667)

  Y_MX= POSTF(1,3,668)

  Z_MN= POSTF(1,3,669)

  Z_MX= POSTF(1,3,700)

  X1=TEXT/CONVF,X_MN,8,3,0,0,4

  Y1=TEXT/CONVF,Y_MN,8,3,0,0,4

  Z1=TEXT/CONVF,Z_MN,8,3,0,0,4

  X2=TEXT/CONVF,X_MX,8,3,0,0,4

  Y2=TEXT/CONVF,Y_MX,8,3,0,0,4

  Z2=TEXT/CONVF,Z_MX,8,3,0,0,4

  INSERT/(TEXT/' MIN LIMETS: X=',X_MN,'|  Y=',Y_MN,'|  Z=',Z_MN,'$')

  INSERT/(TEXT/' MAX LIMITS: X=',X_MX,'|  Y=',Y_MX,'|  Z=',Z_MX,'$')

TERMAC

 

CIMFIL/ON,FINI

  CALL/LIMITS

CIMFIL/OFF

Screenshot_2.jpg

Share this post


Link to post
Share on other sites

ID: 316   Posted (edited)

1 час назад, Z@K сказал:

CIMFIL/ON,FINI

  CALL/LIMITS

CIMFIL/OFF

CIMFIL/ON,FINI

  DMY=POSTF(20)

  CALL/LIMITS

  INSERT/'G0 G53 Z0$'

  INSERT/'G0 G53 X0 Y0$'

  INSERT/'M30$'

  DMY=POSTF(21)

  DMY=POSTF(13)

CIMFIL/OFF

 

Я думаю, достаточно только чуток поправить.

Ну и галку нужно со Start/End of program убрать

1.PNG

 

И естественно, добавить 

Edited by LxCoder

Share this post


Link to post
Share on other sites

ID: 318   Posted (edited)

В 10.08.2018 в 18:12, Z@K сказал:

Симуляция в CREO УП в 4-х осях, поворотна ось A, не совпадает с программо на сам станок.

m_700_4axis_op010.ncl.7

m_700_4axis_op010.tap

uncx01.f10

uncx01.p10

uncx01.s10

1. Отключите в проекте Creo использование команд ROTAT/AAXIS,BAXIS и т.п. ... в настройке станка. Лично я у себя в проектах никогда не использую эти команды, тем более, если вы используете на 95% стандартный (штатный) постпроцессор. Обработка этих команд - дело очень глючное, и если вы впоследствии захотите перевести УП на другой 4-х осевой станок (или даже на 5-ти осевой), вам придется переделывать проект. 

 

1.PNG

 

2. По поводу М8 - для чего такое нестандартное телодвижение? Для того, чтобы за потоком СОЖ нельзя было понять правильно повернулась заготовка в поворотной оси или нет? Сейчас в УП все более-менее съедобно(по крайней мере уж в части СОЖ-точно)

Edited by LxCoder
1 person likes this

Share this post


Link to post
Share on other sites

Помогите пожалуйста! Что нужно сделать в токарно фрезерном посту чтобы не было скачков по Z.

1111.png

Share this post


Link to post
Share on other sites
2 часа назад, serrj сказал:

Помогите пожалуйста! Что нужно сделать в токарно фрезерном посту чтобы не было скачков по Z.

1111.png

А дело точно в посте? В проекте скачков нет? Начните с него.

Я так понимаю, у вас обработка в полярных координатах выполнена. В посте это тоже можно по разному сделать. Если у вас пост не криво.опый, и под него ничего особенного в проекте "гнуть" не нужно, то можно попросту через другой пост ( обычный фрезерный) прогнать вашу обработку, и если в ней "скачков", какие вы описывваете, нет - значит дело точно в нем.

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.



  • Сообщения

    • AlexKaz
      Момент инерции бухты 7000 кг не учли что ли? J_бухты=6300 кг*м^2, в 6.5 раз больше того, что Вы привели. Для экстренного останова необходим какой-нибудь тормоз колодочный/дисковый и т.д.. И то не факт, что эту консольную конструкцию не развалит на первой же намотке.
    • Udav817
      Что-то я думаю, вам подшипники придётся каждый день менять. Вращающиеся 7 тонн за 2 секунды остановить... Чем останавливать-то?  Обычная советская кривошипная гильотина, которой сталь до 10-16 мм рубят имеет редуктор, в котором колёсо на одной оси с маховиком. Так там вся гильотина 5 тонн весит, маховик и колесо - значительно меньше, максимум 800 кг. И то когда двигатель выключается, это всё останавливается минуты 2-3. И там тоже обороты примерно такие же. А вам 7 тонн за 2 секунды. Ну это только ломом.  И то я даже не знаю из чего такой лом сделать. И где вы столько одноразовых людей найдёте, которые будут этот лом всовывать.   Техника безопасности важнее, чем выигрыш нескольких минут с технологической паузы.   Кстати, да. Лучше предусмотреть какую-то съёмную опору, которая хотя бы часть нагрузки возьмёт и будет компенсировать момент. Правда, конструкция такой опоры вряд ли будет простой. Первое, что приходит на ум - свободно скользящая в осевом направлении, чтобы можно было сдвинуть, а дальше поворачивается в сторону на шарнире. Проблема в том, что со временем её будет всё труднее надеть и снять с конца вала.    
    • Udav817
      Если создаёшь эскизы, лучше работать с соответствующей вкладкой. Тогда всё находится.  
    • Беляев
      Причем тут система координат ?ты суть проблемы  понял ? Если по простому то фрезеровка кармана на модели делается с право и отверстия резьбовые тоже с право в том самом кармане !!!!! И симуляции показывает ,что сделано все правильно !!! Но по факту в УП выводится код, карман как и положено с право а вот отверстия с лево!!!! Не там где надо !!!
    • igarr
      Проверил  все, нормально. У меня получаеться при ST35,выставляеться правильно когда переходишь с большего на меньший металл или наоборот. Если просто поменять марку металла тогда выставляеться не правильно. С этим я разобрался ,теперь вычислил одну фиговину по зазорам. Выставил ST42 металл 10мм ,все четко опустил сначало левый край ножа,замерил, опустил правый край ножа(полностью нож опустил)замерял правый край ножа. Всё чётко, зазор согласно бумаге. Теперь выставил металл 7мм, все 0,7мм щуп не лезет,а надо 0,74мм.Щуп 0,65 проходит как положенно, но это для металла ST35 ,а выставленно ST42. Пока оставил все так, какие будут рекомендации?  
    • Chardash
      Суррогатные модели - ИИ и Численные методы     весь плейлист для тех, кому интересно  
    • Francoligas
      Здравствуйте,помогите пожалуйста,есть фаил с цифрами - строка грубо говоря,с нее нужно сделать три массива данных,не как не доходит,как сделать
      Вот на чем остановилась
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using System.Threading.Tasks;

      namespace ConsoleApp1
      {
      class Program
      {
      static void Main()
      {

      string[] lines = System.IO.File.ReadAllLines(@"C:\Users\Kristina\Downloads\y_axis_Channel 1_CH1.frf");

      System.Console.WriteLine("Contents of y_axis_Channel 1_CH1.frf");
      foreach (string line in lines)
      {

      Console.WriteLine("\t" + line);
      }


      Console.WriteLine("Press any key to exit.");
      System.Console.ReadKey();

      }
      }
      }
    • Kir95
      Чтобы начертить линию на плоскости-ЛКМ по плоскости или грани и нажать клавишу "L" (при любой раскладке клавиатуры). Солид переходит в режим эскиза с выбранным инструментом "Линия". Экономия, как минимум в один клик мышью ). Команда осталась со времён 2д эмулятора, когда можно было чертить текстом из командной строки, а-ля автокад.
    • Kir95
      В Windows 10 уже встроенный PDF принтер есть. Ctrl+P->Print->в списке принтеров выбрать Microsoft Print to PDF.
    • igarr
      Я тоже об этом подумал.) Но казалось бы 100 раз проверил, а на 101й нашел,разок было такое.)