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

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


DJ Astro

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

Не обязательно отключать G40 через FIL, можно отключить через сам редактор постпроцессоров

 

Действительно помогло )

 

 

Единственное, что фильтр GOTO затормаживает вывод программы как я понял.

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


Пытался сделать правильный вывод цикла сверления, поковырялся в Gpost`e и в результате получил почти то что надо, единственное что не получается, так это вывод первого отверстия внутри цикла. 

 

В идеале получить примерно такой формат:

 

N7 T1 M6

N8 S3000 M13
N9 G0 X134 Y41
N10 Z2
N11 G81 R-4 Z-7 F100
N12 X134 Y41
N13 Y15.6
N14 G80
N15 G0 Z2
N16 M30

 

Но Gpost выводит координаты первого отверстия либо в строке описания цикла параметрами, либо вообще не выводит их. Может кто подскажет как  первое отверстие запихнуть внутрь цикла? :worthy:  

 

 

Изменено пользователем moovi
Ссылка на сообщение
Поделиться на других сайтах
CIMFIL/ON,CUTCOM

FL40=POSTF(7,4)
 IF (FL40.EQ.ICODEF(OFF)) THEN
  EXIT/NOW
 ENDIF
DMY=POSTF(13)

CIMFIL/OFF

Вот тут все проще:

Вариант 1 (самый простой) - отключить вывод кода G40 в анкете, поставив NR/NA

Вариант 2 (чуть сложнее, если вдруг вариант 1 по каким-то причинам не устраивает) :

 

  Перед секцией CIMFIL/ON,CUTCOM (если таковая имеется) прописать:

  CIMFIL/AT,CUTCOM,OFF

  CIMFIL/OFF

 

Все. Больше ничего не нужно.

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

 

Пытался сделать правильный вывод цикла сверления, поковырялся в Gpost`e и в результате получил почти то что надо, единственное что не получается, так это вывод первого отверстия внутри цикла. 

 

В идеале получить примерно такой формат:

 

 

Но Gpost выводит координаты первого отверстия либо в строке описания цикла параметрами, либо вообще не выводит их. Может кто подскажет как  первое отверстие запихнуть внутрь цикла? :worthy:  

 

 

 

Что-то типа того:

 
FRST=0; CYCL=0; 
 
CIMFIL/AT,CYCLE,OFF
   CYCL=0
   DMY=POSTF(13)
CIMFIL/OFF
 
CIMFIL/ON,CYCLE
   CYCL=1
   FRST=1
   DMY=POSTF(13)
CIMFIL/OFF
 
CIMFIL/ON,GOTO
      IF (CYCL.EQ.1.AND.FRST.EQ.1) THEN
         XB=POSTF(7,6)
         YB=POSTF(7,7)         
         ZB=POSTF(7,8) 
         IB=POSTF(7,9) 
         JB=POSTF(7,10) 
         KB=POSTF(7,11) 
         DMY=POSTF(13)
         DMY=POSTF(20)
         DMY=POSTF(2,1,1867,1)
         IF ((POSTF(1,1,1987)).EQ.3) THEN
           GOTO/XB,(YB+1),ZB
         ELSE  
           GOTO/XB,(YB+1),ZB,IB,JB,KB
         ENDIF
         DMY=POSTF(2,1,1867,0)
         DMY=POSTF(21)         
         FRST=0
      ENDIF   
      DMY=POSTF(13)
CIMFIL/OFF
 
Вроде работает... Хотя не оч. понятно, опять к чему такие сложности. Судя по Вашему посту - стойка - обычный Фанук. Зачем повторять отверстие, на которое еще до цикла выполнено позиционирование - остается загадкой. Это отверстие на нормальной стойке ЧПУ по вашей программе будет обработано 2 раза...
Ссылка на сообщение
Поделиться на других сайтах

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

нужно включить опцию в основных настройках

 

post-4994-0-65768100-1466141452_thumb.jpg

 

и в филе создать макрос _OUTPT

 

post-4994-0-18652400-1466141478_thumb.jpg

 

в нем можно перехватывать все что отправляется на вывод в окончательный файл программы в формате вывода

и искать уже по сформированым значениям которые заданы тут

 

post-4994-0-05612300-1466141495_thumb.jpg

 

вот как то так )

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

  

Вроде работает... Хотя не оч. понятно, опять к чему такие сложности. Судя по Вашему посту - стойка - обычный Фанук. Зачем повторять отверстие, на которое еще до цикла выполнено позиционирование - остается загадкой. Это отверстие на нормальной стойке ЧПУ по вашей программе будет обработано 2 раза...

 

 

Спасибо всем за помощь :smile:  ! 

 

 

Ещё один маленький вопрос.

Можно как-то объединить вот эти два фильтра в один.

 

FRST=0; CYCL=0; 
 
CIMFIL/AT,CYCLE,OFF
   CYCL=0
   DMY=POSTF(13)
CIMFIL/OFF
 
CIMFIL/ON,CYCLE
   CYCL=1
   FRST=1
   DMY=POSTF(13)
CIMFIL/OFF
 
CIMFIL/ON,GOTO
      IF (CYCL.EQ.1.AND.FRST.EQ.1) THEN
         XB=POSTF(7,6)
         YB=POSTF(7,7)         
         ZB=POSTF(7,8) 
         IB=POSTF(7,9) 
         JB=POSTF(7,10) 
         KB=POSTF(7,11) 
         DMY=POSTF(13)
         DMY=POSTF(20)
         DMY=POSTF(2,1,1867,1)
         IF ((POSTF(1,1,1987)).EQ.3) THEN
           GOTO/XB,(YB+1),ZB
         ELSE  
           GOTO/XB,(YB+1),ZB,IB,JB,KB
         ENDIF
         DMY=POSTF(2,1,1867,0)
         DMY=POSTF(21)         
         FRST=0
      ENDIF   
      DMY=POSTF(13)
CIMFIL/OFF

 

 

 

CIMFIL/ON,GOTO

DMY

=POSTF(20)

IR1=POSTF(7,1)

DMY=POSTF(14)

FL41=POSTF(7,3)

FL40=POSTF(7,4)

IF(FL41.EQ.ICODEF(CUTCOM).AND.FL40.EQ.ICODEF(OFF)) THEN

    PREFUN/40,NEXT

ENDIF

DMY=POSTF(15,(IR1+1))

DMY=POSTF(21)

DMY=POSTF(13)

CIMFIL/OFF

 

я так понял два отдельных фильтра на одно слово сделать не получится, а объединить их чет не получается (не хватает знаний матчасти :wallbash: ).

 

Версия с OUTPT макросом тоже интересна, сейчас буду пробовать

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

Вот такое получилось:

 

_OUTPT=MACRO/ 
  NCUR=POSTF(31,1,N)
  GCUR=POSTF(31,1,G)
  XCUR=POSTF(31,1,X)
  YCUR=POSTF(31,1,Y)
  ZCUR=POSTF(31,1,Z)
  FCUR=POSTF(31,1,F)
  RCUR=POSTF(31,1,R)
 
  IF (GCUR.EQ.81) THEN
                           
    DMY=POSTF(31,20)
  DMY=POSTF(31,03)
  DMY=POSTF(31,2,14,NCUR)
    DMY=POSTF(31,2,7,81) 
    DMY=POSTF(31,2,18,RCUR) 
    DMY=POSTF(31,2,26,ZCUR) 
    DMY=POSTF(31,2,6,FCUR) 
    DMY=POSTF(31,2,24,XCUR) 
    DMY=POSTF(31,2,25,YCUR) 
  DMY=POSTF(31,19)
  DMY=POSTF(31,21)
  ELSE
      DMY=POSTF(19)
  ENDIF
TERMAC

 

 

N7 T23.23 M6

N9 S1500 M13
N10 G0 X17 Y-99.5
N11 Z2
N12 G81 X17 Y-99.5 R2 Z-1 F50
N13 X88.5 Y99.5
N14 X88.5 Y38.5
N20 G80

 

только не понятно как текущий X и Y прописать не в цикле, а следующим кадром.

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

По поводу объединения секций GOTO: вторая секция Вам и не нужна. См. посты выше, я уже писал как избавиться от G40 и не плодить FIL-процедур. Другое дело, если вы не ищете легких путей, то можете воткнуть вместо последнего DMY=POSTF(13) свою вторую процедуру и получить так же желаемый эффект.

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

Но можно еще немного подумать и сделать через _OUTPT(там тоже не сложно), если уж есть такое жгучее желание - но это уж Вы сами, а то совсем не интересно будет..

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

По поводу объединения секций GOTO: вторая секция Вам и не нужна. См. посты выше, я уже писал как избавиться от G40 и не плодить FIL-процедур. Другое дело, если вы не ищете легких путей, то можете воткнуть вместо последнего DMY=POSTF(13) свою вторую процедуру и получить так же желаемый эффект.

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

Но можно еще немного подумать и сделать через _OUTPT(там тоже не сложно), если уж есть такое жгучее желание - но это уж Вы сами, а то совсем не интересно будет..

 

Склеил как вы сказали , все получилось спасибо :smile: . А насчет отключения G40 так проблема была не в отключении как таковом, а в выводе G40 на кадр раньше нежели это делает creo (особенность стойки балсистем). В результате все работает как надо спасибо ещё раз :worthy: . Единственное что фильтр на GOTO вроде как тормозит вывод программы, но с этим можно жить )

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

Склеил как вы сказали , все получилось спасибо :smile: . А насчет отключения G40 так проблема была не в отключении как таковом, а в выводе G40 на кадр раньше нежели это делает creo (особенность стойки балсистем). В результате все работает как надо спасибо ещё раз :worthy: . Единственное что фильтр на GOTO вроде как тормозит вывод программы, но с этим можно жить )

на здоровье

Ссылка на сообщение
Поделиться на других сайтах
Единственное что фильтр на GOTO вроде как тормозит вывод программы, но с этим можно жить

чем больше строк и анализа в филе тем медленее работает пост ))

Ссылка на сообщение
Поделиться на других сайтах
  • 4 месяца спустя...

Добрый вечер. Не подскажете с помощью чего можно открыть файл, подключенный к постпроцессору такой командой?

INCLUD/BINARY,file_name.bin

Может ли в нем содержаться ограничение перемещения по оси? Дело в том, что если, например,расстояние между отверстиями больше 1000,скажем 1158, то постпроцессор выводит его как 158, то есть вычитает тысячу.

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

Добрый вечер. Не подскажете с помощью чего можно открыть файл, подключенный к постпроцессору такой командой?

INCLUD/BINARY,file_name.bin

Может ли в нем содержаться ограничение перемещения по оси? Дело в том, что если, например,расстояние между отверстиями больше 1000,скажем 1158, то постпроцессор выводит его как 158, то есть вычитает тысячу.

Бинарный файл является файлом зашифрованного FIL-кода. Его вы не откроете ничем, если только вы не спец-криптограф или не работаете в Austin N.C. В нем (файле) может содержаться все что угодно - это на усмотрение разработчика поста.

Конкретно ваша беда может оказаться гораздо прозаичнее (FIL для этого не нужен). Зайдите в G-Post'e в настройки MCD, найдите в нем формат регистра, соответствующего вашей оси (например, X) и увеличьте разрядность, к примеру с 3.3 на 4.3 или 5.3 - сколько вам нужно. Постпроцессор, скорее всего, ничего не вычитает - у него просто не хватает знакоместа для того, чтобы отобразить значение регистра полностью.

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

Бинарный файл является файлом зашифрованного FIL-кода. Его вы не откроете ничем, если только вы не спец-криптограф или не работаете в Austin N.C. В нем (файле) может содержаться все что угодно - это на усмотрение разработчика поста.

Конкретно ваша беда может оказаться гораздо прозаичнее (FIL для этого не нужен). Зайдите в G-Post'e в настройки MCD, найдите в нем формат регистра, соответствующего вашей оси (например, X) и увеличьте разрядность, к примеру с 3.3 на 4.3 или 5.3 - сколько вам нужно. Постпроцессор, скорее всего, ничего не вычитает - у него просто не хватает знакоместа для того, чтобы отобразить значение регистра полностью.

Помогло,огромное спасибо!
Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...

Уважаемы коллеги!

При создании УП, состоящей из циклов сверления/ резьбонарезания при установленных подачах отхода/ подхода по G0 выводит следующее:

N16G0G43Z25.H5M8
N18A90.
N20X-12.05Y0.
N22G84G95G98X-12.05Y0.Z-2.R17.Q.5F1.5A90.
N24X-38.05
N26X-64.15
 

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

Если поставить подачи отхода/подхода по G1- выводит нормально. 

Возможно это как-нибудь исправить? 

 

И еще вопрос: 

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

Изменено пользователем fenics555
Ссылка на сообщение
Поделиться на других сайтах
При создании УП, состоящей из циклов сверления/ резьбонарезания при установленных подачах отхода/ подхода по G0 выводит следующее: N16G0G43Z25.H5M8 N18A90. N20X-12.05Y0. N22G84G95G98X-12.05Y0.Z-2.R17.Q.5F1.5A90. N24X-38.05 N26X-64.15   Выделенное жирным приходится всегда править руками на одну общую строчку. Если поставить подачи отхода/подхода по G1- выводит нормально.  Возможно это как-нибудь исправить? 

 

 Попробуйте в Gpost закладки:

Motion - Rapid - в поле Motion Analysis - выбрать None.
(Если эти кадры не формируются через Fil).
 
И еще вопрос:  При жестком нарезании резьбы метчиком в строке оборотов необходимо вставить М29, но я тоже так и не нашел где это. Может кто подскажет что можно сделать?
 
Обычно реализуется через Fil.
Ссылка на сообщение
Поделиться на других сайтах
Попробуйте в Gpost закладки: Motion - Rapid - в поле Motion Analysis - выбрать None.

Да, именно это и надо было.

Обычно реализуется через Fil.
 

А еще обычнее реализуется руками  :smile:

Спасибо.

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

Уважаемые коллеги!

Прошу подсказать, где и что поправить в настройках G-Post чтобы устранить проблему.

Пост, в каких то случаях, игнорирует заданные ограничения кинематики и формирует физически невозможное движение.

 

post-95-0-78957000-1480950515_thumb.png

post-95-0-37711000-1480950524.png

 

При этом в сгенерированном коде присутствуют подобные "фишки"

 

post-95-0-59928900-1480950725.png

 

Версия G-Post 6.4 (Creo 2.0 m210 64bit)

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Bot
      Компания «Топ Системы» открывает Весеннюю школу САПР 2024 — серию уроков в формате открытых вебинаров по теме «T‑FLEX CAD как часть платформенного решения T‑FLEX PLM». Когда? 22-27 апреля 2024, начало в 11.00 МСК Какой формат? ONLINE вебинары продолжительностью 2-2,5 часа Что в программе? Демонстрация экспертного опыта работы с технологиями программного комплекса T‑FLEX PLM. Опыт АЗ Урал, Борлас, НИЯУ МИФИ. Знакомство на практических примерах с функционалом и алгоритмами работы программ комплекса T‑FLEX PLM. Опыт миграции с иностранных решений на программный комплекс T-FLEX PLM. РЕГИСТРАЦИЯ Есть ограничения по участникам, требования к слушателям указаны на сайте регистрации. View the full article
    • Александр 36
      Подскажите как копировать часть программы?Кнопка COPY на экран не выводится и не выделяется часть программы
    • alex0800
      вылет большой это раз фрезу отгибает.уменьшить глубину резания .и для снятия фаски это не тот инструмент. виктор они вам морочат голову. но проверь люфт по оси может разболтаны болты на шаровой. или поменяйте направление подачи может в этом случае будет без подрыва  
    • Клиент
      @Viktor2004 , почему второй станок делает лучше можно разбираться. Но здесь реально большой вылет фрезы, слышно как звенит. Может быть, стоит с оборотами поиграть (уменьшить или увеличить. Может быть нагрузку (съём) на фрезу больше дать. Режимы явно нетехнологичны. Судя по всему серия, над технологией поработать нужно, поставьте такую фрезу, она не дорогая:  
    • gudstartup
      @Viktor2004 вопросы к технологам при такой обработке рябь обеспечена это сильно сказано прям таки зеркало? да и ряби на фото не видно @Viktor2004 это вы рябью называете это какое-то дробление материала а не рябь притом только сверху вижу поставите это зеркало на ваш с рябью и сделайте небольшой съем и посмотрите чего зарябит и вообще чего нельзя стол повернуть и фаску продольно снять что за дикий метод
    • Viktor2004
      мне в пример приводят соседний станок. Там все то же самое, такой же вылет, такие же режимы. Но там дает зеркало
    • Leksunkin
      Вылет великоват, сделать припуск поменьше на фаску, как вариант пройти предварительно ступеньками предыдущим инструментом. Фреза похожа на сферическую, если да то лучше по кругу послойно закатать. Станок не виноват.
    • gudstartup
      ну пока еще мы вам никак не помогли но возможно удастся после изучения бэкапа
    • Viktor2004
      Товарищи, подскажите пожалуйста что можно поднастроить При снятии фаски получается рябь. SERVO ERROR в пределах 5 микрон Series31i Model B   VID_20240420_145644.mp4 CNCIDNUM.TXT CNC-PARA.TXT
    • Maik812
      все работает.. привязывать правильно нужно.
×
×
  • Создать...