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

Редактирование постов SolidCAM


CNC_SKILL

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

Добрый день. Есть огромное желание научиться работать в SC с 5 осями (у нас станок HAAS UMC-500) сейчас на нем работают люди в GibbsCAM, но как 3+2 другого поста нет и сделать его не кому, не кто у нас в городе не умеет. Хотим попробовать перейти на SC (SC используем на 3х станках, gibbs только на 3+2 ). Ниже пост от sennik, спасибо большое за него, подскажите пожалуйста можно как-то в нем изменить перемещение по осям? У нас стол имеет оси В и С и стоит неподвижно, шпиндель перемещается по X,Y,Z, в этом архиве есть файл станка у которого перемещения по X и Y у стола и поворот по А и С, а шпиндель только Z. Или может у кого-то есть пост и файлы к нему (файл станка и тд) с такими осями, можно сырой и тд, просто для тренировки в SC. Заранее большое спасибо

31.01.2016 в 19:22, sennik53 сказал:

Вот какой-то есть.Не открывал .Не пробовал.Не тестировал.

Fanuc5x.rar 17 \u041a\u0431 · 130 скачиваний

 

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


40 минут назад, Cripple сказал:

Или может у кого-то есть пост и файлы к нему (файл станка и тд) с такими осями, можно сырой и тд, просто для тренировки в SC. Заранее большое спасибо

Посмотри в этом архиве

Скрытый текст

 

Ссылка на сообщение
Поделиться на других сайтах
16 минут назад, CNC_SKILL сказал:

Посмотри в этом архиве

  Скрыть содержимое

 

Спасибо большое. Есть один с такими осями OKUMA VTM-120YB, подскажите пожалуйста, если знаете, он сильно отличается от HAAS по кодам и УП? Можно чуть что пробовать править его или нет смысла?

Ссылка на сообщение
Поделиться на других сайтах
10 минут назад, Cripple сказал:

Спасибо большое. Есть один с такими осями OKUMA VTM-120YB, подскажите пожалуйста, если знаете, он сильно отличается от HAAS по кодам и УП? Можно чуть что пробовать править его или нет смысла?

Отличается! Проще взять пост HAAS_5x_evel.gpp переименовать оси в файле станка и поменять схему  кинематики там же ! 

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

Отличается! Проще взять пост HAAS_5x_evel.gpp переименовать оси в файле станка и поменять схему  кинематики там же ! 

Подскажите пожалуйста или правильно в дереве оси расположил) Забыл спросить.... sennik писал, что по окончанию и возможности зальет руководство по редактированию постов 15+ версий, в этом топике не нашел, может подскажите где искать если он появился. Спасибо большое за помощь!

 

image.png

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

Подскажите пожалуйста или правильно в дереве оси расположил)

похоже что правильно! 

 

37 минут назад, Cripple сказал:

Забыл спросить.... sennik писал, что по окончанию и возможности зальет руководство по редактированию постов 15+ версий

это скорее всего не руководство а справка из программы с переводом ! 

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, CNC_SKILL сказал:

похоже что правильно! 

 

это скорее всего не руководство а справка из программы с переводом ! 

Понятно, спасибо. Буду заниматься

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

Всем доброго дня!

Гуру будьте добры подскажите где копать при генерации УП для 5х обработки прописывает холостые хода каждый 1-3мм?

Безымянный.jpg

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

Здравствуите,редактирую пост на стоику сименс,не могу отредактировать правильно циклы сверления,пересмотрел посты фануков,хеидинхаймов,хаасов самое понятное прописано в хединхаиме их решение не подходит т.к цикл в одной строке и как расшифрововать ему переменную?пишу и =cykle81,и позиционирование перед циклом и перед 'safety'переменные....... помогите пожалуиста вот пример

If drill_type eq drilling then

Drill_upper_z=drill_upper_z-safety

(Nl,'f'tool_feed)

(Nl,'mcall cycle81('job_clearence_plane','job_upper_plane','safety','drill_lower_z1''')'

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
11.03.2021 в 01:52, Wayland25 сказал:

Здравствуите,редактирую пост на стоику сименс,не могу отредактировать правильно циклы сверления,пересмотрел посты фануков,хеидинхаймов,хаасов самое понятное прописано в хединхаиме их решение не подходит т.к цикл в одной строке и как расшифрововать ему переменную?пишу и =cykle81,и позиционирование перед циклом и перед 'safety'переменные....... помогите пожалуиста вот пример

If drill_type eq drilling then

Drill_upper_z=drill_upper_z-safety

(Nl,'f'tool_feed)

(Nl,'mcall cycle81('job_clearence_plane','job_upper_plane','safety','drill_lower_z1''')'

@drill
; циклы сверления
    call @rapid_move
    local numeric rtp rfp sdis dp
    rtp = drill_clearance_z               ; плоскость отвода
    rfp = (drill_upper_z - safety)        ; базовая плоскость
    sdis = safety                         ; безопасная плоскость
    dp = drill_lower_z                    ; глубина сверления
    
    if tool_direction eq CW then
       mcode = 3
    else         ;  CCW
       mcode = 4
    endif 

    if drill_type eq G81 then
    gcode = 81
    endif
    if drill_type eq G82 then
    gcode = 82
    endif
    if drill_type eq G83 then
    gcode = 83
    endif
    if drill_type eq G84 then
    gcode = 84
    endif
    if drill_type eq G840 then
    gcode = 840
    endif
    if drill_type eq G85 then
    gcode = 85
    endif
    if drill_type eq G86 then
    gcode = 86
    endif
    if drill_type eq G87 then
    gcode = 87
    endif
    {nb,'F',feed}
    {nb,'MCALL CYCLE',gcode}
    {' (',rtp,','rfp,',',sdis,',',dp,','}

    if drill_type eq G81 then
    {')'}
    endif
    if drill_type eq G82 then
    {','verweilz,')'}
    endif
    down_step = (drill_upper_z - safety - down_step)
    if drill_type eq G83 then
    if frf eq 0
       frf = 1
    endif
    {',',down_step,',,'DEGRESS,',',Vremya_zaderjki}
    {',',verw_z_e,',',frf,',',entspaen,')'}
    endif
    
    if drill_type eq G84 then
     if tool_type eq tap_mill      
          local numeric sdac
          if frf eq 0
             frf = 1
          endif
      
          if pos_grad ne 0
              sdac = 5
          else
             ;call @start_tool
              if mcode eq 4
                 sdac = 4
              else
                 sdac = 3
              endif
          endif
          {',',verweilz,',',sdac,',',',',tool_drill_lead:'5.3(p)'} 
          if pos_grad eq 0
              {',0,'}
          else
              {',',pos_grad,','}
          endif
          {spin,','}
          if n_rueckz eq 0
             {',)'}
          else
             {n_rueckz,',0,1,0,0,,1.4,,,,,0,1001002)'}
          endif
     else     
          Print ' Achtung! Kein Gewindebohrer im Job, "',upper(job_name),'" verwendet!' 
     endif      
    endif
    
    if drill_type eq G840 then
     if tool_type eq tap_mill      
        local numeric sdr
        sdr = 0
            if mcode eq 4
               sdac = 4
            else
               sdac = 3
            endif
        {',',verweilz,',',sdr,',',sdac,',',geber',,',tool_drill_lead:'5.3(p)',')'}
     else     
        Print ' Achtung! Kein Gewindebohrer im Job, "',upper(job_name),'" verwendet!' 
     endif
   endif
        
    if drill_type eq G85 then
    {',',verweilz,',',feed,',',f_rueckz,')'}
    endif
    if drill_type eq G86 then
    local integer sdir
    local numeric rpa rpo
    rpa = rueck_xy
    rpo = rueck_xy
    sdir = mcode
    {',',verweilz,',',sdir,',',rpa,',',rpo',',pos_grad,')'}
    endif
    if drill_type eq G87 then
    local integer sdir
    sdir = mcode
    {',',sdir,')'}
    endif
endp

  
;-------------------
  
@drill_point
; точки сверления
    if machine_plane eq zx
       call @invert_xpos
    endif
    if first_drill eq true
       change(xpos) = true
       change(ypos) = true
       change(zpos) = true
    endif
    {nb, '   ', [' X'xpos], [' Y'ypos], [' Z'zpos]}
endp

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

имеется токарный DMTG, 2-оси. SC2020. Заработал только пост  gTurn_Haas_ST30_eval

пока основная проблема в выводе цикла резьбы G76

выводит он её так:

M24 
G76 X116.379 Z-710.4833 I-23.7329 K1.81 D0.5 F0.125 A0 Q0

а я хочу так:

G76P010460R0.0 
G76X116.379Z-710.483P1810Q550R-23.733F3.175 

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

 

подскажите люди добрые))

 

Изменено пользователем Рома калужский
Ссылка на сообщение
Поделиться на других сайтах
17 часов назад, Рома калужский сказал:

имеется токарный DMTG, 2-оси. SC2020. Заработал только пост  gTurn_Haas_ST30_eval

пока основная проблема в выводе цикла резьбы G76

выводит он её так:

M24 
G76 X116.379 Z-710.4833 I-23.7329 K1.81 D0.5 F0.125 A0 Q0

а я хочу так:

G76P010460R0.0 
G76X116.379Z-710.483P1810Q550R-23.733F3.175 

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

 

подскажите люди добрые))

 

 

Кидайте пост, и описание Gкода для вашего станка. Попробую вам помочь!

Ссылка на сообщение
Поделиться на других сайтах
Рома калужский
9 часов назад, Ishimtcev сказал:

Кидайте пост, и описание Gкода для вашего станка. Попробую вам помочь!

да описания то и никакого нет. этож "хххх" китаец. стойка Fanuc 0i-TF

gTurn_DMTG.gpp

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...
22.03.2021 в 08:33, CNC_SKILL сказал:

@drill
; циклы сверления
    call @rapid_move
    local numeric rtp rfp sdis dp
    rtp = drill_clearance_z               ; плоскость отвода
    rfp = (drill_upper_z - safety)        ; базовая плоскость
    sdis = safety                         ; безопасная плоскость
    dp = drill_lower_z                    ; глубина сверления
    
    if tool_direction eq CW then
       mcode = 3
    else         ;  CCW
       mcode = 4
    endif 

    if drill_type eq G81 then
    gcode = 81
    endif
    if drill_type eq G82 then
    gcode = 82
    endif
    if drill_type eq G83 then
    gcode = 83
    endif
    if drill_type eq G84 then
    gcode = 84
    endif
    if drill_type eq G840 then
    gcode = 840
    endif
    if drill_type eq G85 then
    gcode = 85
    endif
    if drill_type eq G86 then
    gcode = 86
    endif
    if drill_type eq G87 then
    gcode = 87
    endif
    {nb,'F',feed}
    {nb,'MCALL CYCLE',gcode}
    {' (',rtp,','rfp,',',sdis,',',dp,','}

    if drill_type eq G81 then
    {')'}
    endif
    if drill_type eq G82 then
    {','verweilz,')'}
    endif
    down_step = (drill_upper_z - safety - down_step)
    if drill_type eq G83 then
    if frf eq 0
       frf = 1
    endif
    {',',down_step,',,'DEGRESS,',',Vremya_zaderjki}
    {',',verw_z_e,',',frf,',',entspaen,')'}
    endif
    
    if drill_type eq G84 then
     if tool_type eq tap_mill      
          local numeric sdac
          if frf eq 0
             frf = 1
          endif
      
          if pos_grad ne 0
              sdac = 5
          else
             ;call @start_tool
              if mcode eq 4
                 sdac = 4
              else
                 sdac = 3
              endif
          endif
          {',',verweilz,',',sdac,',',',',tool_drill_lead:'5.3(p)'} 
          if pos_grad eq 0
              {',0,'}
          else
              {',',pos_grad,','}
          endif
          {spin,','}
          if n_rueckz eq 0
             {',)'}
          else
             {n_rueckz,',0,1,0,0,,1.4,,,,,0,1001002)'}
          endif
     else     
          Print ' Achtung! Kein Gewindebohrer im Job, "',upper(job_name),'" verwendet!' 
     endif      
    endif
    
    if drill_type eq G840 then
     if tool_type eq tap_mill      
        local numeric sdr
        sdr = 0
            if mcode eq 4
               sdac = 4
            else
               sdac = 3
            endif
        {',',verweilz,',',sdr,',',sdac,',',geber',,',tool_drill_lead:'5.3(p)',')'}
     else     
        Print ' Achtung! Kein Gewindebohrer im Job, "',upper(job_name),'" verwendet!' 
     endif
   endif
        
    if drill_type eq G85 then
    {',',verweilz,',',feed,',',f_rueckz,')'}
    endif
    if drill_type eq G86 then
    local integer sdir
    local numeric rpa rpo
    rpa = rueck_xy
    rpo = rueck_xy
    sdir = mcode
    {',',verweilz,',',sdir,',',rpa,',',rpo',',pos_grad,')'}
    endif
    if drill_type eq G87 then
    local integer sdir
    sdir = mcode
    {',',sdir,')'}
    endif
endp

  
;-------------------
  
@drill_point
; точки сверления
    if machine_plane eq zx
       call @invert_xpos
    endif
    if first_drill eq true
       change(xpos) = true
       change(ypos) = true
       change(zpos) = true
    endif
    {nb, '   ', [' X'xpos], [' Y'ypos], [' Z'zpos]}
endp

 

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

@drill
    ; Handle output for drill cycles
    local logical skipZpos
    local integer y_firstPeck
    local integer trey
    local integer tye
    local integer ttt
    local integer yyy
local integer yyy1
    skipZpos = false
    if job_type eq '3-d drill' and prev_command eq '@drill_point'
        skipZpos = true
    endif
    if !skipZpos
        ;{nb,cDrZp'Z'zpos' 'cDrZs}
    endif
    if drill_type eq G81
        iDrillmode = 81
        {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z')',nb, 'X'xpos' Y'ypos}
    endif
    if drill_type eq G82
        iDrillmode = 82
        {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z',,'P_Dwell ')',nb, 'X'xpos' Y'ypos}
    endif
    if drill_type eq G83
        iDrillmode = 83
        y_firstPeck = I_firstPeck
               if I_FirstPeck eq 0
                {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z',,,'I_firstPeck','procent','J_reduceAmount',0.6,25,0,0,'V1','V2','P_Dwell',0,0,1,11211112)',nb, 'X'xpos' Y'ypos}
        else
                {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z',,,'I_firstPeck','procent','DTB',0.6,25,0,0,'V1','V2','P_Dwell',0,0,1,11211112)',nb, 'X'xpos' Y'ypos}
        endif
    endif
    if drill_type eq G73
        iDrillmode = 83
        y_firstPeck = I_firstPeck
        if P_Dwell eq 0
            change(P_Dwell) = false
        endif
        if I_FirstPeck eq 0
            {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z',,,'I_firstPeck','J_reduceAmount',' P_Dwell',0,25,0,0,,'y_firstPeck')',nb, 'X'xpos' Y'ypos}
        else
            {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','drill_upper_z' ,'drill_lower_z',,,'I_firstPeck','J_reduceAmount',' P_Dwell',0,25,0,0,,'y_firstPeck')',nb, 'X'xpos' Y'ypos}
        endif
    endif
    if drill_type eq G84
        iDrillmode = 84
        trey = spin
        tye = tool_drill_lead
        if iSpindleDir eq 3
yyy=3
else
yyy=4
endif
        if cG84p ne ''
           {nb,cG84p}
        endif
        if bG84spin
            change(spin) = true
        else
            change(spin) = false
        endif
        if iG84feed eq 1
            nG84feed = tool_drill_lead*spin
        endif
        if iG84feed eq 2
            nG84feed = tool_drill_lead
        endif
     {nb,'F'feed ' ',nb, 'MCALL CYCLE840('zpos ','job_upper_plane','safety',,'depth','DT840',0,'yyy',11,,'tye',0,1,0,,,,,1000,1)',nb, 'X'xpos' Y'ypos} 
     endif
    if drill_type eq G84_Peck
        iDrillmode = 84
 trey = spin
        tye = tool_drill_lead
        if iSpindleDir eq 3
yyy=3
yyy1=1
else
yyy=4
yyy1=2
endif
        if cG84p ne ''
           {nb,cG84p}
        endif
        if bG84spin
            change(spin) = true
        else
            change(spin) = false
        endif
        if iG84feed eq 1
            nG84feed = tool_drill_lead*spin
        endif
        if iG84feed eq 2
            nG84feed = tool_drill_lead
        endif
              {nb,'F'feed ' ',nb, 'MCALL CYCLE84('zpos ','job_upper_plane','safety',,'depth','DT84','yyy',,'tye','AS84','spin','SR8400',0,1,0,1,'Q_Peck','V284',,,,,1000,200'yyy1'001)',nb, 'X'xpos' Y'ypos} 
    endif
   
    if drill_type eq G86
        iDrillmode = 86
   if iSpindleDir eq 3
yyy=3
else
yyy=4
endif
       {nb,'F'feed ' ',nb, 'MCALL CYCLE'iDrillmode ' ('zpos ','job_upper_plane','safety',,'depth','DT1','yyy','DX86','DY86','DZ86','SPOS86')',nb, 'X'xpos' Y'ypos}  

    endif
   
endp
 

 

 

нужные тебе переменные задаешь в файле станка

  local logical skipZpos
    local integer y_firstPeck
    local integer trey
    local integer tye
    local integer ttt
    local integer yyy
local integer yyy1

вот эти

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

Добрый день! Подскажите, есть ли возможность определить имя файла (плюс расположение) постпроцессора при постпроцессировании? Встречал информацию в мануале для старых версий, что есть переменная post_processor. В новых версиях такая переменная не определена, в процедуре @vmid_info ничего подходящего также не нашел.

Ссылка на сообщение
Поделиться на других сайтах
19 часов назад, gtakiller сказал:

... определить имя файла (плюс расположение) постпроцессора при постпроцессировании?

С этого места по-подробнее, ПЛЗ, и желательно с картинками  :paint2: как для "особо-одарённых". А то не совсем (вернее совсем) не понятно - чего тебе надобно старче :confused_1:

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
19.05.2021 в 18:00, Plumber сказал:

С этого места по-подробнее, ПЛЗ, и желательно с картинками  :paint2: как для "особо-одарённых". А то не совсем (вернее совсем) не понятно - чего тебе надобно старче :confused_1:

Есть файл постпроцессора random_machine.gpp который лежит в папке "C:\Users\Public\Documents\SolidCAM\InventorCAM2020\Gpptool". При генерации УП с использованием указанного постпроцессора хотелось бы получать в тексте УП имя файла постпроцессора и по возможности путь к нему в файловой системе. Например:
Postprocessor filename: random_machine.gpp

Location of postprocessor file: C:\Users\Public\Documents\SolidCAM\InventorCAM2020\Gpptool

 

Вот и хотелось бы узнать, есть ли параметры передающие данную информацию.

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

Доброго времени суток колеги столкнулся с проблемой вывода УП, sennik53 великодушно предоставил мне пост под DMU 840D (оси А и С поворотные). Суть  вопроса в следующем сформировав под УП переход и нажав "сгенерировать УП" система выдала мне кучу сообщений с указанием строк в посте и неопределенными переменными. Line 1661: Переменная 'Anzahl_Leerschnitte' не определена (к примеру)  в общем я нашел данные строки в посте

@thread
   local numeric number_cuts
 
    number_cuts = depth / down_step
        
    if Anzahl_Leerschnitte eq 0
       Anzahl_Leerschnitte = 1
    endif
    if turning_mode eq external
       if Bearbeit_Art eq 0
          Bearbeit_Art = 3
       endif
    else  ; internal
       if Bearbeit_Art eq 0
          Bearbeit_Art = 4
       endif
    endif
    if Anzahl_Gaenge eq 0
       Anzahl_Gaenge = 1
    endif

А что с ними делать дальше не понял? Подскажите у кого есть понимание как решить данную проблему (пробовал закомментировать, не помогло) 

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
11.08.2021 в 13:58, Texnolog-Programist сказал:

Доброго времени суток колеги столкнулся с проблемой вывода УП, sennik53 великодушно предоставил мне пост под DMU 840D (оси А и С поворотные). Суть  вопроса в следующем сформировав под УП переход и нажав "сгенерировать УП" система выдала мне кучу сообщений с указанием строк в посте и неопределенными переменными. Line 1661: Переменная 'Anzahl_Leerschnitte' не определена (к примеру)  в общем я нашел данные строки в посте

@thread
   local numeric number_cuts
 
    number_cuts = depth / down_step
        
    if Anzahl_Leerschnitte eq 0
       Anzahl_Leerschnitte = 1
    endif
    if turning_mode eq external
       if Bearbeit_Art eq 0
          Bearbeit_Art = 3
       endif
    else  ; internal
       if Bearbeit_Art eq 0
          Bearbeit_Art = 4
       endif
    endif
    if Anzahl_Gaenge eq 0
       Anzahl_Gaenge = 1
    endif

А что с ними делать дальше не понял? Подскажите у кого есть понимание как решить данную проблему (пробовал закомментировать, не помогло) 

это переменные которые нужно определить в vmid станка, вкладка параметры пользователя, добавить в нужный раздел

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

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...