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

GPOST создание цикла сверления/нарезания резьбы


Techno_Tasha

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

Привет всем. Проблема в постпоцессировании циклов для SINUMERIK 840D SL. Станок - DMG DMU 50.

При повороте стола и сверлении в наклонной плоскости детали не прописывает циклы. Проблема в координатной плоскости TRAORI. Решила ее перейдя в TOROT.

Есть математическое описание пересчета координат, так что обеспечить движение только по Z я могу. Написанная программа от руки - работает.

Как прописал ее в FIL файле?

 

Программа, написанная вручную исходя из CL data:

 

N16 T="BOOR_D8.5" M6
N17 TRAORI
N18 S1300 M3
N19 TRAFOOF
N20 G0 C315. B54.736
N21 TRAORI
N22 TOROT
N23 X39.433 Y10.566
N24 Z132.79
G0 F570
N26 X39.4335 Y10.566 
CYCLE81 (48.867,28.867,20,-8.1203) 
TOROTOF
G0 C225.
TOROT
G0 X0 Y0 
CYCLE81 (20,0,20,-36.988)
TOROTOF
G0 C135
TOROT
G0 X10.566 Y39.433 
CYCLE81 (48.867,28.867,20,-8.1203)
TOROTOF
G0 C45
TOROT
G0 X28.867 Y28.867
CYCLE81 (77.735,57.735,20,20.747)
N38 G0 Z161.6584
N39 M5
TOROTOF
N40 TRAFOOF
 
CL data:
 
GOTO/61.547,-1.547,11.547
0.57735,-0.57735,0.57735
CYCLE/DRILL,DEPTH,36.97414, MMPM, 570, CLEAR, 20
GOTO 50,0,0
....
 
Вопрос: как сохранить значения X,Y,Z перед циклом для просчета RTP, RFP и DP? 
Дальше планирую ловить цикл и замещать значения.
CIMFIL/ON,CYCLE,DRILL
  IF(MULTAC.EQ.1) THEN
  DEPTH = POSTF(7,6) $$depth record
  FREC = POSTF(7,8) $$F record
  ClearREC = POSTF(7,10)$$Clear record
      
  INSERT/'TOROT'
  POSTN/OUT,'MCALL CYCLE81 (',RTP,RFP,SDIS,DP,DPR,')'

 

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


Многие смотрят, никто не отвечает.

Может не ясно выражаюсь. Необходимо словить кадр перед циклом в CL Data. Кто знает как это можно прописать в FIL файле?

Ссылка на сообщение
Поделиться на других сайтах
Вопрос: как сохранить значения X,Y,Z перед циклом для просчета RTP, RFP и DP?  Дальше планирую ловить цикл и замещать значения.

 

Можно по разному:

например с помощью  POSTF(7,_) из GOTO

X = POSTF(7,6)      

Y = POSTF(7,7)  
Z = POSTF(7,8)
 
или из переменных после отработки  GOTO
 X = POSTF(1,1,344)
 Y = POSTF(1,1,345)
 Z = POSTF(1,1,346)
Ссылка на сообщение
Поделиться на других сайтах

Многие смотрят, никто не отвечает.

Может не ясно выражаюсь. Необходимо словить кадр перед циклом в CL Data. Кто знает как это можно прописать в FIL файле?

Можно использовать функцию POSTF(30, ...) при обработке GOTO

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

 

Привет всем. Проблема в постпоцессировании циклов для SINUMERIK 840D SL. Станок - DMG DMU 50.

При повороте стола и сверлении в наклонной плоскости детали не прописывает циклы. Проблема в координатной плоскости TRAORI. Решила ее перейдя в TOROT.

Есть математическое описание пересчета координат, так что обеспечить движение только по Z я могу. Написанная программа от руки - работает.

Как прописал ее в FIL файле?

 

Программа, написанная вручную исходя из CL data:

 

N16 T="BOOR_D8.5" M6
N17 TRAORI
N18 S1300 M3
N19 TRAFOOF
N20 G0 C315. B54.736
N21 TRAORI
N22 TOROT
N23 X39.433 Y10.566
N24 Z132.79
G0 F570
N26 X39.4335 Y10.566 
CYCLE81 (48.867,28.867,20,-8.1203) 
TOROTOF
G0 C225.
TOROT
G0 X0 Y0 
CYCLE81 (20,0,20,-36.988)
TOROTOF
G0 C135
TOROT
G0 X10.566 Y39.433 
CYCLE81 (48.867,28.867,20,-8.1203)
TOROTOF
G0 C45
TOROT
G0 X28.867 Y28.867
CYCLE81 (77.735,57.735,20,20.747)
N38 G0 Z161.6584
N39 M5
TOROTOF
N40 TRAFOOF
 
CL data:
 
GOTO/61.547,-1.547,11.547
0.57735,-0.57735,0.57735
CYCLE/DRILL,DEPTH,36.97414, MMPM, 570, CLEAR, 20
GOTO 50,0,0
....
 
Вопрос: как сохранить значения X,Y,Z перед циклом для просчета RTP, RFP и DP? 
Дальше планирую ловить цикл и замещать значения.
CIMFIL/ON,CYCLE,DRILL
  IF(MULTAC.EQ.1) THEN
  DEPTH = POSTF(7,6) $$depth record
  FREC = POSTF(7,8) $$F record
  ClearREC = POSTF(7,10)$$Clear record
      
  INSERT/'TOROT'
  POSTN/OUT,'MCALL CYCLE81 (',RTP,RFP,SDIS,DP,DPR,')'

 

В нормальных постпроцессорах нет такой проблемы. Все это на Sinumerik'е делается через команду ROT. Проверьте выбранное количество осей в вашем постпроцессоре и почитайте инструкцию на Сименс. Ваш подход и вопрос более чем непонятны.

Ссылка на сообщение
Поделиться на других сайтах
О мудрейшие, подскажите пожалуйста как вывести DCYC?

Через INSERT/DCYC не получается, в list файле пишет слишком много знаков. Подскажите, что делать :worthy: .

 

 WHEN/84

DCYC=TEXT/'CYCLE84','(',RTP,',',RFP,',',SDIS,',',DP,',',DPR,', ,'SDAC,', ,',FD,', ,',SST,','SST,')$'

 ENDCAS

    ELSE

    NUL = POSTF(13)              $$ PROCESS THE GOTO RECORD...

   ENDIF

   

   POSTN/OUT,G,0,C,GD1,B,BD1

   INSERT/'TOROT$'

   POSTN/OUT,G,0,X,XGT,Y,YGT

   INSERT/DCYC

   INSERT/'TOROTOF$' 

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

В нормальных постпроцессорах нет такой проблемы. Все это на Sinumerik'е делается через команду ROT. Проверьте выбранное количество осей в вашем постпроцессоре и почитайте инструкцию на Сименс. Ваш подход и вопрос более чем непонятны.

Вот именно, в нормальных. Универ решил сделать из нас первоклассных специалистов и повесил на студентов задачу разрабатывать постпроцессор. Поэтому костылей там меряно не меряно :biggrin: .

ROT для меня не так удобна как TOROT в плане постпроцессирования. В ROT необходимо еще и углы X Y Z указывать, а по сути результат будет тот же. Инструкций на Сименс у меня гора,не переживайте. Опыт работы на 5-координатном станке тоже есть.

 

Проблему, о которой писала в начале, я решила. С циклом сверления все четенько. На станке протестировала, работает!

Теперь бы вот вывести цикл нарезания резьбы  :g:

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

Для вывода длинных строк используется вывод нескольких команд INSERT. В генератор забиваете символ сцепления и у вас несколько текстовых переменных выведутся в одну строку:

Например если задать символом сцепления \

INSERT/MYMY1,'\$'

INSERT/MYMY2,'$'

выведется строка содержащая MYMY+MYMY2

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

Проблему, о которой писала в начале, я решила. С циклом сверления все четенько. На станке протестировала, работает!

Теперь бы вот вывести цикл нарезания резьбы  :g:

Поздравляю с успехами. Хорошо, что государство наконец-то озаботилось воспитанием кадров, соответсвующих требованиям времени.

По поводу циклов - чем вас не устраивают автоматически сформированные циклы Gpost'ом?(ну за исключением, может быть мелких каких-то доработок, например, растачивания)

Там и выдумывать ничего не нужно - этож не хейденхайн... Там никаких супер процедур писать не требуется, просто на вкладке настроек формата цикла нужно указать Siemens, и тип модальный-не модальный. Для 99% стандартных осевых циклов этого достаточно.

Ссылка на сообщение
Поделиться на других сайтах
В 29.11.2016 в 21:32, LxCoder сказал:

 

Поздравляю с успехами. Хорошо, что государство наконец-то озаботилось воспитанием кадров, соответсвующих требованиям времени.

По поводу циклов - чем вас не устраивают автоматически сформированные циклы Gpost'ом?(ну за исключением, может быть мелких каких-то доработок, например, растачивания)

Там и выдумывать ничего не нужно - этож не хейденхайн... Там никаких супер процедур писать не требуется, просто на вкладке настроек формата цикла нужно указать Siemens, и тип модальный-не модальный. Для 99% стандартных осевых циклов этого достаточно.

 

Запарились, потому что при пяти координатном ( вернее 3+2 координатном) нарезании резьбы или сверлении для прямого перемещения шпинделя вниз необходимо изменить все три координаты (так как наша система координат повернута и наклонена вместе с деталью). Постпроцессор понятное дело цикл вывести не может.  Он его формирует через G1 и G0.

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

Ссылка на сообщение
Поделиться на других сайтах
В 28.11.2016 в 09:50, GARRY сказал:

Для вывода длинных строк используется вывод нескольких команд INSERT. В генератор забиваете символ сцепления и у вас несколько текстовых переменных выведутся в одну строку:

Например если задать символом сцепления \

INSERT/MYMY1,'\$'

INSERT/MYMY2,'$'

выведется строка содержащая MYMY+MYMY2

Спасибо. Я так и сделала. Только вот без очищения пробелов он не хотел нормально выводить, посему OMIT,3.

Короче решила поделиться одним из циклов для примера :

 

WHEN/83                        $$DEEP HOLE DRILLING
    IF(MULTAC.EQ.1) THEN   
   DCYC=TEXT/'CYCLE83 '
   DCY1=TEXT/'(',RTP,',',RFP,',',SDIS,',',DP,',', DPR,',,',FDPR,','
   DCY1=TEXT/OMIT,DCY1,3
   DCY2=TEXT/'0,0,0,1,1,)$'
   DCY2=TEXT/OMIT,DCY2,3
   POSTN/OUT,G,0,X,XD1,Y,YD1,Z,ZD1
   POSTN/OUT,G,0,C,GD1,B,BD1
   INSERT/'TOROT$'
   INSERT/DCYC,DCY1,DCY2
   INSERT/'TOROTOF$'
   ELSE
   POSTN/OUT,X,XD1,Y,YD1
  ENDIF
 

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...
В 07.12.2016 в 20:57, Techno_Tasha сказал:

 

Запарились, потому что при пяти координатном ( вернее 3+2 координатном) нарезании резьбы или сверлении для прямого перемещения шпинделя вниз необходимо изменить все три координаты (так как наша система координат повернута и наклонена вместе с деталью)

А через наклонный план работать не пробовали? (Типа CYCLE800 и проч. фигня?) Просто я никак не могу понять, чего же вы там такого делаете с бедным DMU 50 с синумериком, что вам не хватает стандартного функционала и приходится прописывать свои процедуры для осевых циклов... Как мне кажется, просто ваш подход не совсем верен, либо на станке отсутствует процедура пересчета наклонного плана (перенос СК при 3+2 обработке). Но даже при вашем подходе, через TRAORI и TOROT ось Z должна параллельной оси инструмента...

Ссылка на сообщение
Поделиться на других сайтах
  • 5 недель спустя...
В 22.12.2016 в 22:28, LxCoder сказал:

А через наклонный план работать не пробовали? (Типа CYCLE800 и проч. фигня?) Просто я никак не могу понять, чего же вы там такого делаете с бедным DMU 50 с синумериком, что вам не хватает стандартного функционала и приходится прописывать свои процедуры для осевых циклов... Как мне кажется, просто ваш подход не совсем верен, либо на станке отсутствует процедура пересчета наклонного плана (перенос СК при 3+2 обработке). Но даже при вашем подходе, через TRAORI и TOROT ось Z должна параллельной оси инструмента...

Мне было легче прописать перерасчет координат в постпроцессоре. В 800 цикле на мой взгляд намного больше параметров и он сложней в определении. По факту, TOROT делает то же самое. Он просто создает систему координат, ось Z которой совпадает с текущей осью инструмента, без изменения нуля детали. Все остальное дело математики.  

Ссылка на сообщение
Поделиться на других сайтах
В ‎21‎.‎01‎.‎2017 в 22:02, Techno_Tasha сказал:

Мне было легче прописать перерасчет координат в постпроцессоре. В 800 цикле на мой взгляд намного больше параметров и он сложней в определении. По факту, TOROT делает то же самое. Он просто создает систему координат, ось Z которой совпадает с текущей осью инструмента, без изменения нуля детали. Все остальное дело математики.  

Я не сомневаюсь в том, что в итоге у вас все получится, но, на мой взгляд, этот подход очень похож на "удаление гланд через прямую кишку". Поверьте, GPost в состоянии обработать стандартные циклы для 3+2 обработки (тем более для такой распространенной стойки как S840D) без всяких доп. пересчетов, процедур и т.п. Единственное, что нужно сделать - это научить его формировать строку с циклом наклонного плана, а для 99% случаев для него реально нужны только два параметра - это значения углов вращения и наклона. И все.

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

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

@LxCoder 

В САМ программе у нас все перемещения относительно одной системы координат. Если мы ее как-либо изменяем в постпроцессоре (будь то 800 цикл или TOROT) нам все равно нужен пересчет координат точек из старой системы координат в новую трансформированную систему координат. Так что без этого не обойтись. 

 

800 цикл по факту вращает/перемещает систему координат и координаты точки все равно станок воспринимает уже относительно новой системы координат.  

Ссылка на сообщение
Поделиться на других сайтах
В 11.03.2017 в 23:45, Techno_Tasha сказал:

 

В САМ программе у нас все перемещения относительно одной системы координат.

В САМ программе все перемещения строятся относительно СК, заданной в качестве основной в операции - это правильно. Все вспомогательные СК(ну кроме непрерывных 4-х и 5-ти осевых обработок) строятся таким образом, чтобы ось Z была направлена коллинеарно оси инструмента (конечно и тут есть свои моменты, но для 99% 3+2 обработки это так)

В 11.03.2017 в 23:45, Techno_Tasha сказал:

... Если мы ее как-либо изменяем в постпроцессоре (будь то 800 цикл или TOROT) нам все равно нужен пересчет координат точек из старой системы координат в новую трансформированную систему координат. Так что без этого не обойтись. 

Обойтись, поверьте. Не думайте так плохо об американцах, что они, такие неумехи, и не смогли зашить в математический аппарат постпроцессора собственные процедуры пересчета. Все что вам нужно - сформировать строку поворота осей по В,С, повернуть соответствующим образом СК в управляющей программе через план (через ROT, TOROT или CYLE800 - а именно сформировать строку с ранее считанными углами поворота осей В,С, а не пересчитывать все координаты через формулы поворота!), а затем пост сам(!) сформирует вам осевой цикл.

Вот кусок получаемой программы из-под поста:

 

CYCLE800() ; выкл. накл. план перед сменой угла
B60 C=DC(45) ; поворачиваем реальные оси станка
CYCLE800(0,"DMG",200000,192,0,0,0,60,45,0,0,0,0,1,,1) ; повторяем углы в 800 цикле и поворачиваем СК, чтобы ось Z была коллинеарна оси инструмента
X23.404 Y0 ; позиционируем в новой СК - тут тоже не нужны пересчеты
Z67.619
G0 F200
MCALL CYCLE83 (27.619,17.619,10,,18.502,,4,100,0,0,100,1,0,0,0,0,0,0,0,11211111) ; сверлим отверстие
X23.404 Y0
MCALL
 

Нет у меня в посте ни пересчета координат в "повернутую" СК, ни процедур для формирования строк осевых циклов для Siemens Sinumerik 840d. Этот постпроцессор отработан на реальном станке и работает по сей день. Так что вы все усложняете.

 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • davidovka
      Про ГОСТ Р 2.106 сказали. И отдельно есть требования для КД с применение электрического монтажа: ГОСТ 2.413-72, п 3.4 в частности.
    • Александр1979
      Не используется. Подключайте OMI к X422 1 - коричневый (Start-) 3 - зеленый (Error) 4 - белый (Start+) 5 - красный (+15V) 7 - фиолетовый (Low batt) 8 - зел/черн, фиолет/чёрный, бирюз/чёрный, чёрный (0V) 10 - бирюзовый (Probe status 1)
    • ANT0N1DZE
      Там кулачок гладкий, но по форме не обязательно дугой окружности (зубья там необязательны), он по сути обеспечивает переменное плечо для силы от пружины, чтобы создать нужный момент в зависимости от угла поворота. @Fixidea Так вам какой конкретно механизм нужно сделать? Вы эту статью привели просто в качестве примера, судя по всему. 
    • RokiSIA
      Судя по всему к нему подведено питания, но выход не используется, я вроде правильно понимаю?    
    • Ветерок
      Инструкция по построению модели в NX? Есть такие инструкции? Вы строите модели только по инструкциям? Без инструкции никак? Или в вашей железнодорожной корпорации всё должно строиться только по инструкциям? Тогда вам должны предоставить инструкцию. Вот только кто будет писать подобные инструкции, если эти модели ещё никто не строил - большая загадка.
    • Александр1979
      У вас был задействован импульсный выход (SKIP) на OMI ?
    • felena
      Спасибо, но это я все знаю. Конкретно по 2.106 указано про  алфавитный порядок. Мне НК утверждает что гост оговорено указывать конденсаторы и прочее в том порядке, в каком они идут по ПЭ3. А это далеко не алфавитный порядок, вернее не по русскому алфавиту. Есть про это где-то четкое указание?
    • Волшебница
      Доброго дня! Возможно ситуацию прояснят ГОСТ Р 2.106—2019 и ГОСТ Р 2.102—2023
    • Killerchik
      Небольшая путаница. Постпроцессор - это такой файл на ПК, с помощью которого CAM переводит линии траекторий на экране в текстовый файл УП. По сути, это как бы правила языка УП для конкретного станка.   Если хотите остаться в SW, используйте SW CAM :) По первой части - в целом да, редактирование поста это уже не очень просто, лучше самому не лезть без понимания. НО. Ни разу в жизни у меня не было ситуации, чтобы к простейшему токарному или 3-х осевому фрезерному станку не подошёл какой-то дефолтный пост, соответствующий стойке. В комплекте к SW CAM идёт куча стандартных постов, с вероятностью, близкой к 100%, один из них подойдёт Вам практически полностью. В общем-то для остальных CAMов так же, поищите, наверняка есть стандартный пост. Не обязательно чётко под Ваш Фанук, подойдёт почти что под любой Фанук. Если софту не обязательно быть лицензионным, то всё ещё сильнее упрощается :)   Совсем в идеале - прогонять готовую УП через какой-нибудь симулятор, типа верикута - но это уж совсем круто, для ответственных деталей.   Да, выставляете длины инструментов, ноль системы координат детали - и вперёд.
    • felena
      Всем здравствуйте. Знающие люди. Нужен совет. Есть печатная плата с элементами, я оформляю КД, поспорила с НК про спецификацию. Где есть четкое указание, как должны быть записаны электронные компоненты в спецификации в разделе прочие изделия? В каком порядке, гост? Или это регулируется на каждом предприятии по своему?
×
×
  • Создать...