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

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


CNC_SKILL

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

Добрый день

Прошу помощи по такому вопросу

Токарный постпроцессор при выводе G кода не выдает переменную скорости вращения шпинделя, при нарезании резьбы метчиком

Можно ли это дело поправить?

 

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


Всем доброго времени суток!

Пытаюсь подружить SC с датчиком Renishaw для привязке детали. Инструкция лежит вот тут. Вроде все банально и просто. Но возникает проблема при генерации УП. В файле 00212_P_3X_Renishaw_Fanuc_inc.gpp в строке 396 переменная prb_Mm не определена. Так же эта переменная встречается и дальше по файлу.  Кто-нибудь может определить эту переменную?))) ну или дать пару советов.

00212_P_3X_Renishaw_Fanuc_inc.gpp

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

Всем Камрадам привет!

Помогите разобраться, не могу найти этот параметр, в посте.

При спиральной врезке в отверстие по контуру УП выдает код через G1 а нужно чтобы выводил через G2/G3

Ткните носом где и что поправить, заранее благодарен!)

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

Ответ нашел сам, дело было в параметре станrа в файле vmid

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

Продолжаю ковырять пост gMill_3x. У меня Fanuc32i не понимает код, если в конце каждого кадра не стоит точка с запятой. Не могу найти параметр в посте, куда ее добавить. Не подскажет кто?

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

Продолжаю ковырять пост gMill_3x. У меня Fanuc32i не понимает код, если в конце каждого кадра не стоит точка с запятой. Не могу найти параметр в посте, куда ее добавить. Не подскажет кто?

А в стойке разве нет такого параметра который сам автоматом ставит ; ?

Поищите должен быть, к примеру у меня на HAAS он есть ! 

На сколько мне известно Fanuc 32i довольно таки заряженная стойка в отличии от Fanuc 0i !

 

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

А в стойке разве нет такого параметра который сам автоматом ставит ; ?

Поищите должен быть, к примеру у меня на HAAS он есть ! 

На сколько мне известно Fanuc 32i довольно таки заряженная стойка в отличии от Fanuc 0i !

 

То есть, это функция стойки, а не поста? Попробую, ладно!

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

То есть, это функция стойки, а не поста?

должна быть ДА! По крайней мере на ХААСЕ он не только ставит ; в конце каждого кадра но и ставит точку . в конце каждого слова координат XYZ целого числа если они не заложены в программе ! 

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

должна быть ДА! По крайней мере на ХААСЕ он не только ставит ; в конце каждого кадра но и ставит точку . в конце каждого слова координат XYZ целого числа если они не заложены в программе ! 

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

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

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

По идее если включить параметр с точкой то и ; он должен сразу  ставить автоматом, возможно это одна и та же телега! 

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

Господа-товарищи! Бился, бился - пока не решил проблему.

Если в параметрах перехода в SC на вкладке "Дополнительно" менять значение bStopM00 на Да, то в конце перехода в УП выводится М00 вместо М01. Но есть неприятный довесок, в виде дублирования строк. Пример :

.......

G03 X62. Y-1.8 I0. J1.8
G01 Y-5.8
G03 X62. Y-5.8 I0. J5.8
G00 Z25.
M09
M05
G00 G28 G91 Z0
G00 G28 G91 Y0.
M00
M09
G00 G28 G91 Z0
G00 G28 G91 Y0.
M05
M01

 

 

N2
G00 G28 G91 Z0
G00 G90 G94 G17 G40 G49 G80
T2 M06 (End mill D6 Chist)
T1
(Otv D20 Chist.)
G00 G54 G90 X62. Y-3.4 S6000 M03
G43 H5 D5 Z25. M08
Z25.

.........

 

Здесь фрагмент кода, окончание работы одного инструмента, с выходом в референт по Z и Y, и М00, потом смена инструмента на Т2 и обработка дальше. В конце видно дублирование строк и еще зачем-то М01. Редактировал стандартный пост gMill_Haas_3x.

Методом проб, тыка и немного головы :-) установил, что задействованы три процедуры (при работе разными инструментами, как в моем случае)

 

@end_of_job
    ; Handle what happens at end of operation(job)
    ; If using Subs we do not make tool change in @start_of_job
    if bStopM00
        if tool_number eq next_job_tool_number
            call @usr_StopM00_sametool
        else
            call @usr_StopM00_difftool      
        endif
    endif
    bSkipxyrapid = false
    bStopM00difftool = false
    iPworkoffset = iWorkoffset
endp

 

Здесь, в общем, понятно и вопросов нет. В моем случае. ссылка идет на процедуру @usr_StopM00_difftool    

 

@usr_StopM00_difftool
    ; Handle output for forced stopM00 between operations using different tools
    if bCoolExist
        iCoolantM1      = iCoolantM1OFF
        iCoolantM2      = iCoolantM2OFF
        iCoolantM3      = iCoolantM3OFF
        iCoolantM4      = iCoolantM4OFF
        iCoolantM5      = iCoolantM5OFF
        iCoolantM6      = iCoolantM6OFF
        iCoolantM7      = iCoolantM7OFF
        iCoolantM8      = iCoolantM8OFF
        ;call @usr_coolant_output
    endif
    {nb}
    {'M09'}
    iSpindleDir = 5
    {nb}
    call @usr_spindle_mcode_output
    if sHomestrstpdiff ne ''
        sHomestr = sHomestrstpdiff
        call @usr_prep_home_axis
    endif
    call @usr_forcedstop
    ;sUsrmsg = sStopMessage
    ;call @usr_message
    ;bStopM00difftool = true
endp

 

Я ее подрихтовал уже, и кое-что ненужное из УП убрал, но дублирование осталось! Затем нашлась и третья процедура, что отвечает за вывод конца блока, и заодно шапки следующего:

 

@usr_ct_before_notfirsttool
    ; Handle output before the next tool change
    ; This is not called before the first tool change
    if !bStopM00difftool
        if bCoolofftc and bCoolExist
            iCoolantM1      = iCoolantM1OFF
            iCoolantM2      = iCoolantM2OFF
            iCoolantM3      = iCoolantM3OFF
            iCoolantM4      = iCoolantM4OFF
            iCoolantM5      = iCoolantM5OFF
            iCoolantM6      = iCoolantM6OFF
            iCoolantM7      = iCoolantM7OFF
            iCoolantM8      = iCoolantM8OFF
            ;call @usr_coolant_output    
        endif
        if sHomestrtc ne ''
        {nb}
        {'M09'}
            sHomestr = sHomestrtc
            call @usr_prep_home_axis
        endif
        if bSpinofftc
         iSpindleDir = 5
            {nb}
            call @usr_spindle_mcode_output
        endif
        if bOptstptc
            call @usr_optionalstop
        endif
    endif
    if bTcseperation
        {nl}
    endif
    if !bSimpleformat
        bSafetyprep = true
        call @usr_ct_init_gmstates
    endif
    if bNnumtc                                           ; С этого кадра начинается новый блок инструмента N2, N3  и т.д.
        {nl,'N'iTcnumber' '}
    else
        {nb}
    endif
    if !bSimpleformat
    sHomestr = sHomestrbegin
        call @usr_prep_home_axis
        {nb}
     {'G00 '}
        call @usr_abs_inc_output
    {'G94 '}
        call @usr_mp_output
        call @usr_compensation_output
    {'G49 '}
        skipline = false
        call @end_drill
       
    endif
endp

 

В ней я тоже немного подправил, что сумел понять, потому фрагмент УП в начале имеет данный вид... Но не могу убрать дублирование строк при М00 ! Если выводить с М01, то все корректно, как надо. Может кто подсказать, что еще подшаманить-то??

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

В ней я тоже немного подправил, что сумел понять, потому фрагмент УП в начале имеет данный вид... Но не могу убрать дублирование строк при М00 ! Если выводить с М0, то все корректно, как надо. Может кто подсказать, что еще подшаманить-то??

Я тоже пытался это сделать но при различных комбинация вывода УП нужного результата я не достиг и пришел к такому выводу, что проще, быстрее и практичнее дописать М00 руками в нужном месте чем тратить  время ковыряя постом, так как данная функция используется  лично мной очень редко! 

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

Я тоже пытался это сделать но при различных комбинация вывода УП нужного результата я не достиг и пришел к такому выводу, что проще, быстрее и практичнее дописать М00 руками в нужном месте чем тратить  время ковыряя постом, так как данная функция используется  лично мной очень редко! 

Спасибо! Отличные видео по редактирование постов и по SC кстати! Все смотрю, и здорово помогает в освоении SC! Заодно вопрос: вы два поста используете? На три оси один пост, на 4 оси - другой? И заодно, было б здорово сделать видео по нюансам редактирования поста с 4 осью!

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

Спасибо! Отличные видео по редактирование постов и по SC кстати! Все смотрю, и здорово помогает в освоении SC!

Вы меня с кем-то  наверное путаете :biggrin:!

(Шутка)

Только что, Metalfrezer сказал:

Заодно вопрос: вы два поста используете? На три оси один пост, на 4 оси - другой?

Да! Практика показывает что так  правильнее и практичнее ! 

Только что, Metalfrezer сказал:

И заодно, было б здорово сделать видео по нюансам редактирования поста с 4 осью!

Видео делать не буду так как правка 4х осевого поста по аналогии такая же как и для 3х осевого не каких особенностей  только с добавлением  адреса А (4й оси) и процедур отвечающих за ее функционал! 

 

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

Господа-товарищи! Бился, бился - пока не решил проблему.

Если в параметрах перехода в SC на вкладке "Дополнительно" менять значение bStopM00 на Да, то в конце перехода в УП выводится М00 вместо М01. Но есть неприятный довесок, в виде дублирования строк. Пример :

.......

G03 X62. Y-1.8 I0. J1.8
G01 Y-5.8
G03 X62. Y-5.8 I0. J5.8
G00 Z25.
M09
M05
G00 G28 G91 Z0
G00 G28 G91 Y0.
M00
M09
G00 G28 G91 Z0
G00 G28 G91 Y0.
M05
M01

 

 

N2
G00 G28 G91 Z0
G00 G90 G94 G17 G40 G49 G80
T2 M06 (End mill D6 Chist)
T1
(Otv D20 Chist.)
G00 G54 G90 X62. Y-3.4 S6000 M03
G43 H5 D5 Z25. M08
Z25.

.........

 

Здесь фрагмент кода, окончание работы одного инструмента, с выходом в референт по Z и Y, и М00, потом смена инструмента на Т2 и обработка дальше. В конце видно дублирование строк и еще зачем-то М01. Редактировал стандартный пост gMill_Haas_3x.

Методом проб, тыка и немного головы :-) установил, что задействованы три процедуры (при работе разными инструментами, как в моем случае)

 

@end_of_job
    ; Handle what happens at end of operation(job)
    ; If using Subs we do not make tool change in @start_of_job
    if bStopM00
        if tool_number eq next_job_tool_number
            call @usr_StopM00_sametool
        else
            call @usr_StopM00_difftool      
        endif
    endif
    bSkipxyrapid = false
    bStopM00difftool = false
    iPworkoffset = iWorkoffset
endp

 

Здесь, в общем, понятно и вопросов нет. В моем случае. ссылка идет на процедуру @usr_StopM00_difftool    

 

@usr_StopM00_difftool
    ; Handle output for forced stopM00 between operations using different tools
    if bCoolExist
        iCoolantM1      = iCoolantM1OFF
        iCoolantM2      = iCoolantM2OFF
        iCoolantM3      = iCoolantM3OFF
        iCoolantM4      = iCoolantM4OFF
        iCoolantM5      = iCoolantM5OFF
        iCoolantM6      = iCoolantM6OFF
        iCoolantM7      = iCoolantM7OFF
        iCoolantM8      = iCoolantM8OFF
        ;call @usr_coolant_output
    endif
    {nb}
    {'M09'}
    iSpindleDir = 5
    {nb}
    call @usr_spindle_mcode_output
    if sHomestrstpdiff ne ''
        sHomestr = sHomestrstpdiff
        call @usr_prep_home_axis
    endif
    call @usr_forcedstop
    ;sUsrmsg = sStopMessage
    ;call @usr_message
    ;bStopM00difftool = true
endp

 

Я ее подрихтовал уже, и кое-что ненужное из УП убрал, но дублирование осталось! Затем нашлась и третья процедура, что отвечает за вывод конца блока, и заодно шапки следующего:

 

@usr_ct_before_notfirsttool
    ; Handle output before the next tool change
    ; This is not called before the first tool change
    if !bStopM00difftool
        if bCoolofftc and bCoolExist
            iCoolantM1      = iCoolantM1OFF
            iCoolantM2      = iCoolantM2OFF
            iCoolantM3      = iCoolantM3OFF
            iCoolantM4      = iCoolantM4OFF
            iCoolantM5      = iCoolantM5OFF
            iCoolantM6      = iCoolantM6OFF
            iCoolantM7      = iCoolantM7OFF
            iCoolantM8      = iCoolantM8OFF
            ;call @usr_coolant_output    
        endif
        if sHomestrtc ne ''
        {nb}
        {'M09'}
            sHomestr = sHomestrtc
            call @usr_prep_home_axis
        endif
        if bSpinofftc
         iSpindleDir = 5
            {nb}
            call @usr_spindle_mcode_output
        endif
        if bOptstptc
            call @usr_optionalstop
        endif
    endif
    if bTcseperation
        {nl}
    endif
    if !bSimpleformat
        bSafetyprep = true
        call @usr_ct_init_gmstates
    endif
    if bNnumtc                                           ; С этого кадра начинается новый блок инструмента N2, N3  и т.д.
        {nl,'N'iTcnumber' '}
    else
        {nb}
    endif
    if !bSimpleformat
    sHomestr = sHomestrbegin
        call @usr_prep_home_axis
        {nb}
     {'G00 '}
        call @usr_abs_inc_output
    {'G94 '}
        call @usr_mp_output
        call @usr_compensation_output
    {'G49 '}
        skipline = false
        call @end_drill
       
    endif
endp

 

В ней я тоже немного подправил, что сумел понять, потому фрагмент УП в начале имеет данный вид... Но не могу убрать дублирование строк при М00 ! Если выводить с М01, то все корректно, как надо. Может кто подсказать, что еще подшаманить-то??

Здравствуйте как я понял вы хотите прийти к такому виде программного кода если выбран опциональный стоп?


G64
G40 G90 G94
G54
TT2
S3500 M03
G00 G54 X73.011 Y-6.6 A0.
Z25.
G00 Z2.
G01 Z-2. F300
G01 X69.411 F1000
G02 X73.011 Y-3. I3.6 J0.
G01 X103.103
G03 X106.103 Y0. I0. J3.
G01 Y63.407
G03 X103.103 Y66.407 I-3. J0.
G01 X0.
G03 X-3. Y63.407 I0. J-3.
G01 Y0.
G03 X0. Y-3. I3. J0.
G01 X30.092
G03 X32.738 Y-1.413 I0. J3.
G02 X70.365 Y-1.413 I18.8132 J-10.0431
G03 X73.011 Y-3. I2.6465 J1.4128
G02 X76.611 Y-6.6 I0. J-3.6
G01 X73.011
G00 Z25.
M05
M00
()
G90

G54
TT1
S3500 M03
G00 X61.367 Y-6.216 A0.
Z25.
G00 Z2.
G01 Z-8. F300
G01 X64.757 Y-12.568 F1000
G03 X67.718 Y-2.826 I-3.3907 J6.3516
G03 X35.385 Y-2.826 I-16.1667 J-8.6303
G03 X38.346 Y-12.568 I6.3516 J-3.3907
G01 X41.736 Y-6.216
G00 Z25.
OFF
M30

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

Здравствуйте как я понял вы хотите прийти к такому виде программного кода если выбран опциональный стоп?

А какой у вас станок и стойка?

Впервые вижу вызов инструмента через ТТ! 

А как у вас выводит М00  если вставить его между траекторий  делая обработку одним и тем же инструментам  ? 

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

 

Не совсем. Я хотел бы получить такой вид:

.......

G03 X62. Y-1.8 I0. J1.8
G01 Y-5.8
G03 X62. Y-5.8 I0. J5.8
G00 Z25.
M09
M05
G00 G28 G91 Z0
G00 G28 G91 Y0.
M00

 

N2
G00 G28 G91 Z0
G00 G90 G94 G17 G40 G49 G80
T2 M06 (End mill D6 Chist)
T1
(Otv D20 Chist.)
G00 G54 G90 X62. Y-3.4 S6000 M03
G43 H5 D5 Z25. M08
Z25.

.........

Т.е. убрать дублирование строк в конце блока кода для предыдущего инструмента, и непонятный М01 в конце, когда перед ним уже стоит М00. В принципе, все остальное меня устраивает.

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

А какой у вас станок и стойка?

Впервые вижу вызов инструмента через ТТ! 

А как у вас выводит М00  если вставить его между траекторий  делая обработку одним и тем же инструментам  ? 

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

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

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

Стойка или пост?

И снова мой вопрос 

Только что, Frezer_PU сказал:

А как у вас выводит М00  если вставить его между траекторий  делая обработку одним и тем же инструментам  ? 

 

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

Не совсем. Я хотел бы получить такой вид:

.......

G03 X62. Y-1.8 I0. J1.8
G01 Y-5.8
G03 X62. Y-5.8 I0. J5.8
G00 Z25.
M09
M05
G00 G28 G91 Z0
G00 G28 G91 Y0.
M00

 

N2
G00 G28 G91 Z0
G00 G90 G94 G17 G40 G49 G80
T2 M06 (End mill D6 Chist)
T1
(Otv D20 Chist.)
G00 G54 G90 X62. Y-3.4 S6000 M03
G43 H5 D5 Z25. M08
Z25.

.........

Т.е. убрать дублирование строк в конце блока кода для предыдущего инструмента, и непонятный М01 в конце, когда перед ним уже стоит М00. В принципе, все остальное меня устраивает.

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

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • eljer0n
      Большое спасибо! Посмотрю. Но, судя по всему, даже если удастся заставить его сохранять чертеж с трехзначным исполнением, видимо, в той же спецификации правильного отображения не добиться. У Леона с товарищем был об этом разговор, что солид вроде как не воспринимает исполнения дальше двузначного. Хотя, может и я неправильно понял. Вернусь к этому вопросу чуть позже. Еще раз спасибо за совет.
    • mrVladimir
      @gudstartup @Viktor2004 спасибо Вам за такое участие.  Я вот тоже в maintenance manual заглянул (наконец-то ). А вот фраза "при замене FROM/SRAM необходимо ..." (под пунктом 3 во вложении) не подразумевает, что появление ps5523 произойдет только если мы решим на нашей чпу поменять именно FROM/SRAM. А при замене других печатных плат (в том числе и материнской ) необходимо только как написано в пункте 2 восстановить данные памяти SRAM и, при необходимости, файлы пользователя. Нет?
    • maxx2000
      @davidovka это же очевидно. Вдруг нужного размера не окажется  как в анекдоте  
    • davidovka
      А для чего и сотни исполнений в таблице и гибкость одновременно?
    • ak762
      в СВ есть встроенный калькулятор для расчета балок при различных сценариях нагружения если ваш профиль монорельса совпадает с предопределенными профилями то можно прикинуть поведение монорелься без анализа на картинке 2 расчета двутавровой балки в качестве теста    
    • Viktor2004
      @mrVladimir не спешите отчаиваться. Вопрос спорный Я завел новую тему в которой мы это выясним  
    • Viktor2004
      Уважаемые специалисты. У кого был опыт замены фануковских плат? Именно на ЧПУ. Пожалуйста напишите какое ЧПУ и какую плату меняли И результат. Подошла или не подошла  
    • gudstartup
      @mrVladimir к сожалению с вашей платой все не так просто вам придется приобрести ее клон то есть она должна быть подготовлена продавцом и в нее должен быть записан серийный номер вашей старой платы он на штрихкоде а так готовить умеют не все или готовьтесь к сертификации опций также есть еще один аппаратный вариант но не каждый будет на новую плату м\сх перепаивать с риском превратить ее в кирпич.   если бы у вас был отдельный модуль процессора то вы бы просто переставили его в новую плату и все а с этой платой из-за ее не модульности намучаешься
    • SAPRonOff
      в окне состава изделия снять замочки у колонки позиция, тогда генератор колонки состава изделия не будет им присваивать свои значения автоматически, а запомнит то - что вы поставили или стояло до изменений проекта: 
    • Kelny
      Смотреть надо процедуру main, почти в самом конце: Слева от этих строк на сером поле ставите красные точки (клик мышкой) и запускаете макрос, когда макрос дойдёт до обозначенных строк можно будет наводить мышку на перменные, например, sPathName и смотреть значения, что бы определить где сбой: Для продолжения выполнения макроса нажимаем зелёный треугольничек (как кнопка Play).      
×
×
  • Создать...