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

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

А как сделать запрограммированный останов на середине сверления, чтобы сверло и отверстие продуть\ почистить? Я если программу остановлю и  шпиндель остановлю,программа сможет дальше выполняться, а шпиндель больше запустить не получается, надо прогу с начала запустить. Если бы я мог останавливать и чистить - то можно сразу длинным сверлом идти

Попробуй такой способ ! У меня на хаасе работает со сверловкой!

Нажимаешь FEED HOLD (стоп) выбираешь ось Z далее нажимаешь HAND JOG и выводишь инструмент из отверстия, продуваешь нажимаешь MEM и жмешь CYCLE START (зеленую), обороты должны вкл автоматом и сверло начнет опускаться в отверстие на 5% ускоренной подаче на ту высоту и в то место с которого ты его остановил и вывел и далее продолжит сверлить ! 

Либо впаймай момент когда сверло выйдет из отверстия нажав на стоп и проделай туже процедуру чтоб оно начинало сверлить с верху не заходя в отверстие! 

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


Господа-товарищи! Такой вопрос: как выбирать геометрию для обработки пунктом "Петля".(например, в цикле "Карман").  Сорри, что не прикладываю скриншот, на этом компе SC не установлен, но думаю знатокам понятно и так. "Дуга по точкам", "От точки к точке" понятно, а вот с "Петля" опытным путем не удалось разобраться.

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

Господа-товарищи! Такой вопрос: как выбирать геометрию для обработки пунктом "Петля".(например, в цикле "Карман").  Сорри, что не прикладываю скриншот, на этом компе SC не установлен, но думаю знатокам понятно и так. "Дуга по точкам", "От точки к точке" понятно, а вот с "Петля" опытным путем не удалось разобраться.

Попробуйте так!

https://yadi.sk/i/gjEGhGFuzuJF8

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

Всем здравствуйте. Продублирую свой вопрос, так как не получил ответа. :no:
Станок VDL-500 на Fanuc 0i-MC. К примеру имеем 2 перехода, один черновой один чистовой обрабатывается одним инструментом. После обработки нужно запустить второй раз чистовой переход с корректировками на диаметр или высоту. На данный момент УП у меня выводится так :

------------

------------
G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290.
G01 X-15.3009 Y-62.3483
G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01
G00 Z25.
(IFINISH)
X-8.3404 Y-70.1548
Z25.
Z2.
G01 Z-21. F5000.
G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290.
---------------
---------------

А нужно как то так.

 

-------------------------

------------------------
G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290.
G01 X-15.3009 Y-62.3483
G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01
G00 Z25.
M09

N2 G90 G17 G40 G80 G00
M06 T4 ()
(IFINISH)
G00 G54 G90 X-8.3404 Y-70.1548 S429 M03
G43 H4 Z120. M08

Z25.
Z2.
G01 Z-21. F5000.
G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290.

-------------------------------

----------------------------

 

Вставка этой команды не принесла результата.

@start_of_job
...
    {nb,'T', tool_number, 'M6'}
....

endp

Может я неправильно что то сделал? Вставил так:

 

 

;

--------------------

@start_of_job
; Handle what happens at start of operation(job)
; If using Subs we do not make tool change in @start_of_job
if bSubs
{nb,'T', tool_number, 'M6'}
{nb, cCb,job_name,cCe}
else
if bTlchg
call @usr_ct
bTlchg = false
else
{nb, cCb,job_name,cCe}
if iPworkoffset ne iWorkoffset
{nb}
call @usr_homenumber_output
skipline = false
change(xpos) = false
change(ypos) = false
zpos = znext
change(zpos) = true
call @rapid_move
change(xpos) = true
change(ypos) = true
change(zpos) = false
call @rapid_move
bSkipxyrapid = true
endif
endif
endif
if job_type eq 'drill_hr'
bSkipxyrapid = false
endif
if bCoolExist
call @usr_coolant
endif
call @usr_HSM_mode
endp

 

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

Тоже давно интересовал данный вопрос но не как не получается до сих пор его решить :sad:  :no: ! 

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

И так, хоть я не силен в английском и в C++, но мне таки удалось заставить пост впиндюривать смену инструмента и коррекцию в переходах которые идут подряд и используют один инструмент. НО, не все так гладко. Поехали...

В файле поста я поменял вот это значение с false на true

-------------------------------

@start_of_job
    ; Handle what happens at start of operation(job)
    ; If using Subs we do not make tool change in @start_of_job
    if bSubs
        {nb, cCb,job_name,cCe}
    else
        if bTlchg
            call @usr_ct
            bTlchg = true
-----------------------------
Получил такую УП между переходами
-----------------------------
X-15.3012 Y-54.6548 
G03 X-19.6881 Y-54.6618 Z-20.92 I-2.1934 J-0.0102 
G01 X-19.7047 Y-66.0415 F5000. 
G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290. 
G01 X-15.3009 Y-62.3483 
G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01 
G00 Z25. 
M09 
M05 
M01 
 
N3 G90 G17 G40 G80 G00 
M06 T4 ()
(iFinish)
G00 G54 G90 X-70.5136 Y15.9805 S429 M03 
G43 H4 Z120. M08 
Z25. 
Z2. 
G01 Z-21. F5000. 
G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290. 
X-14.9862 Y-62.8742 I7.7875 J1.8749 F337. 
G03 X-17.1138 Y-60.2647 I-2.9428 J-0.2272 F276.946 
G02 X-23.5423 Y-58.0571 I19.2584 J66.5438 F337.
-------------------
А что не так, спросите вы? А вот оно что! В этом кадре (G00 G54 G90 X-70.5136 Y15.9805 S429 M03) координаты из первого перехода и на деле мы получаем удар о деталь на быстром перемещении. 
Я пошел дальше, и не знаю как вообще мне захотелось поменять вот это значение с true на false
--------------
@usr_ct
    ; Handle all aspects of Tool Change
    if bMultiplefixtures eq True
        bFrombeginchangetool = True
        call @Multiple_Fixtures     
    endif
    if !first_tool
        iTcnumber = iTcnumber + 1
    endif
    bStartFile = false
    if !first_tool
        call @usr_ct_before_notfirsttool
    endif
    if first_tool
        call @usr_ct_before_firsttool
    endif
    call @usr_ct_toolchange
    call @usr_ct_init_gmstates
    call @usr_ct_after
    if !bMultiplefixtures 
        bSkipxyrapid = false
    endif
    if bMultiplefixtures eq True
        bFromendchangetool = True
        call @Multiple_Fixtures     
    endif
endp
------------------------------------
И что мы получаем:
-----------------------------
G03 X-19.6881 Y-54.6618 Z-20.92 I-2.1934 J-0.0102 
G01 X-19.7047 Y-66.0415 F5000. 
G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290. 
G01 X-15.3009 Y-62.3483 
G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01 
G00 Z25. 
M09 
M05 
M01 
 
N3 G90 G17 G40 G80 G00 
M06 T4 ()
(iFinish)
G00 G54 G90 X-70.5136 Y15.9805 S429 M03 
G43 H4 Z120. M08 
X-8.3404 Y-70.1548 
Z25. 
Z2. 
G01 Z-21. F5000. 
G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290. 
X-14.9862 Y-62.8742 I7.7875 J1.8749 F337. 
---------------------------------------------
В строке с оборотами так же координаты из первого перехода, но после G43 появляются нормальные координаты.
Мне это напоминает велосипед который едет за счет другого велосипеда.
Прошу советов.
Ссылка на сообщение
Поделиться на других сайтах

Начало есть! 

Возможно надо ближе копать к этой процедуре так как она выводит те координаты которые нужны

044fe858d4d075af5dbfbef28e9fe80f.png

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

Начало есть! 

Возможно надо ближе копать к этой процедуре так как она выводит те координаты которые нужны

044fe858d4d075af5dbfbef28e9fe80f.png

Пробовал, результата нет. Я как понимаю инструкция для составления постпроцессоров в переводе от Sennik53 не подходит для SC2016?

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

Да Бог с ним, пусть вручную пишет, если позволяют требования к работе.А как сделать запрограммированный останов на середине сверления, чтобы сверло и отверстие продуть\ почистить? Я если программу остановлю и  шпиндель остановлю,программа сможет дальше выполняться, а шпиндель больше запустить не получается, надо прогу с начала запустить. Если бы я мог останавливать и чистить - то можно сразу длинным сверлом идти

прописать две дублирующие траектории сверления, но на разных высотах, в доп. фуннциях указать использование М00. так деталька к тебе еще и подьедет по G28 Y0 если пост нормальный

X-5cfd_tSTA.jpg

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

прописать две дублирующие траектории сверления, но на разных высотах, в доп. фуннциях указать использование М00. так деталька к тебе еще и подьедет по G28 Y0 если пост нормальный

X-5cfd_tSTA.jpg

УЗБАГОЙСЯ!

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

Привет всем!

Было дело, шеф заставил разбираться с солидом. Покорпел, Сделал...

Солид конечно вещь, но нужно править код, который выдает УП. Его править под конкретную стойку ПОЛЮБОМУ. В итоге я пишел к тому, что сначала сам в тетрадке расписываю программу движения фрезы по координатам. Потом проверяя себя печатаю в блокноте ткстшник затем переношу погу на дискету,с помощью тотал командера, удаляя, расширение .txt вместе с точкой. Ну и зависит от стойки.

Простой пимер, навскидку - квадратная бобышка высотой 10 и 20 на 20 мм. Ноль деталиверхний левый угол. (Смотрим на деталь сверху) Допустим материал аллюминий и заготовка на 1мм больше нужной детали. Соответственно необходимо учитывать что ноль детали смещен относително ноля заготовки. Т.е сначала выставляем ноль на станке непосредственно над загатовкой, отступив от краев на 1мм. (ORA,0,X,Y,Z)

Фреза 10 Учитываем это в программе смещая х и у относительно края детали на половину диметра фрезы или её радиус, кому как проще.

Контролируем зажатие заготовки, чтобы нигде не вьехать фрезой или патроном. Учтите высоту заготовки. Она должна быть выше. допустим зажимаем за 4 мм, добавляем запас в 1 мм над губками тисков, т.е. заготовка 21х21х15

Включаем голову!!!

%

M3S1000M7 {вкл.шпинделя, обороты, вкл. охл. может стоять М8}

G0F200X-20Y5Z20 {быстрое позиционирование. следует помнить, что нужно задавать скорость F и желательно использовать только за габаритами загатовки, чтобы случайноне врезаться на большой подаче. контролируется ручкой jog на станке, как и подача с оборотами.}

G1F100Z-1{контролируемое перемещениие G1 регулируем подачу F и дальше прога едет с этой скоростью}

X25

Y-25

X-5

Y5

X-10

Z-2

X25

Y-25

X-5

Y5

X-10

Z-3

;И ТАК ДО 10.1(запаса над губками должно остаться 0.9мм)

Z-10.1

X25

Y-25

X-5

Y5

X-10

G0F200Z50 { отошли от детали и поехали наверх. Тут G0 необходимо, чтобы станок поняс следующие команды. При G1 станок думает, что он работает и не реагирует на команду остановки}

M5M9{ Выключаем шпиндел и эмульсию}

M0{конец программы, бывает M30}

%

Как отрезать лишнее, за что зажимались не трудно догадаться.

Вот блин вам и солид кам...

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

На личном примере могу сказать, солид хорош адля посмотреть шаблон и понять как должна ездить фреза. А так проще ручками )

С уважением Дмитрий.

P.S.

Если есть вопросы или предложения пишите arsadima@gmail.com Занимаюсь фрезерованием по работе. Иногда подрадатываю, пишите.

квадратики фрезеровать можно и ручками, да, там и программист не нужен, оператор на стойке таккую мелочь сам должен уметь писать.

А вот для прессформы какой-нибудь хитрожопой посмотрю я как он напишет 200-300 тыс. строк кода ручками

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

Всем здравствуйте. Продублирую свой вопрос, так как не получил ответа. :no:

Станок VDL-500 на Fanuc 0i-MC. К примеру имеем 2 перехода, один черновой один чистовой обрабатывается одним инструментом. После обработки нужно запустить второй раз чистовой переход с корректировками на диаметр или высоту. На данный момент УП у меня выводится так :

------------

------------

G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290.

G01 X-15.3009 Y-62.3483

G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01

G00 Z25.

(IFINISH)

X-8.3404 Y-70.1548

Z25.

Z2.

G01 Z-21. F5000.

G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290.

---------------

---------------

А нужно как то так.

 

-------------------------

------------------------

G03 X-15.3178 Y-66.0547 Z-21. I2.1935 J-0.0032 F290.

G01 X-15.3009 Y-62.3483

G03 X-15.9363 Y-60.7944 Z-20.92 I-2.1934 J0.01

G00 Z25.

M09

N2 G90 G17 G40 G80 G00

M06 T4 ()

(IFINISH)

G00 G54 G90 X-8.3404 Y-70.1548 S429 M03

G43 H4 Z120. M08

Z25.

Z2.

G01 Z-21. F5000.

G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290.

-------------------------------

----------------------------

 

Вставка этой команды не принесла результата.

@start_of_job
...
    {nb,'T', tool_number, 'M6'}
....

endp

Может я неправильно что то сделал? Вставил так:

 

 

;

--------------------

@start_of_job

; Handle what happens at start of operation(job)

; If using Subs we do not make tool change in @start_of_job

if bSubs

{nb,'T', tool_number, 'M6'}

{nb, cCb,job_name,cCe}

else

if bTlchg

call @usr_ct

bTlchg = false

else

{nb, cCb,job_name,cCe}

if iPworkoffset ne iWorkoffset

{nb}

call @usr_homenumber_output

skipline = false

change(xpos) = false

change(ypos) = false

zpos = znext

change(zpos) = true

call @rapid_move

change(xpos) = true

change(ypos) = true

change(zpos) = false

call @rapid_move

bSkipxyrapid = true

endif

endif

endif

if job_type eq 'drill_hr'

bSkipxyrapid = false

endif

if bCoolExist

call @usr_coolant

endif

call @usr_HSM_mode

endp

формулируйте то что хотите боле конкретно, изначально вы просили добавить вызов инструмента в начале каждой траектории.

правильно сформулированное ТЗ = 50% выполненной работы!!!

попробуем зайти с другой стороны, см скрин

post-17660-0-77960200-1480749168.png

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

 

 

if bSubs

ЗДЕСЬ ОПИСАНО УСЛОВИЕ

ЕСЛИ bSubs

Посмотрите, что означает bSubs

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

формулируйте то что хотите боле конкретно, изначально вы просили добавить вызов инструмента в начале каждой траектории.

правильно сформулированное ТЗ = 50% выполненной работы!!!

попробуем зайти с другой стороны, см скрин

attachicon.gifСнимок.PNG

 с начало уп свой, после твоих манипуляций залей сюда.  уж потом будем рассуждать дальше...

к примеру у меня он не выводится. уп закрепил.MILL-FINAL-D16H7.TOOL-D12.txt

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

 с начало уп свой, после твоих манипуляций залей сюда.  уж потом будем рассуждать дальше...

к примеру у меня он не выводится. уп закрепил.attachicon.gifMILL-FINAL-D16H7.TOOL-D12.txt

Точно! И мне кажется я все доходчиво объяснил. В разных преходах один инструмент. В разных. Переходах а не траекториях. А вы мне скрин даете с чистовой и черновой обработкой в одном переходе, там априори не будет выводится вызов инструмента и коррекция. Далее есть мое сообщение с решением этой проблемы, но есть нюансы.И у меня такое чувство складывается, что только мне оно нужно, и я тут только вопросы вам задаю и ничего не предпринемаю. Осталось только решить эти нюансы не без помощи людей, которые разбираются в постпроцессировании.

 

Sennik53 я благодарю Вас за инструкцию, но поиск в ней bSubs не дает результатов. :sad:

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

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

post-17660-0-45051700-1480766716.png

В начале каждого перехода(траектории) есть строка кода сообщающая метод по которому производилась обработка, выполняемый командой постпроцессора {nb,';---',job_type} вписанной в блок:

 
@start_of_job
.....
{nb,';---',job_type}
....
endp
 
 

test.rar

 

Если какая-либо формация должна выводиться перед каждой траекторией ее необходимо прописать в блок @start_of_job постпроцессора.

можно прописать все, вызов инструмента, включение выключение корректора на длину и т.п.

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

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

G00 G54 G90 X-70.5136 Y15.9805 S429 M03  G43 H4 Z120. M08  X-8.3404 Y-70.1548  Z25.  Z2.  G01 Z-21. F5000.  G02 X-14.7875 Y-64.1326 Z-21.08 I1.3404 J7.8971 F290.  X-14.9862 Y-62.8742 I7.7875 J1.8749 F337.  --------------------------------------------- В строке с оборотами так же координаты из первого перехода, но после G43 появляются нормальные координаты. Мне это напоминает велосипед который едет за счет другого велосипеда. Прошу советов.

Смотрите блок в посте отвечающий за вызов инструмента, если в нем есть строки call @line или call @rapid_move - удалить

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

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

 

 

Смотрите блок в посте отвечающий за вызов инструмента, если в нем есть строки call @line или call @rapid_move - удалить

Я не редактирую чужой пост. Я редактирую стандартный пост gMilling_3x. из SC. Он есть у каждого. А зачем брать пост из ранних версий? Он будет корректно работать в SC 2016? Я понимаю что можно добавить, что угодно в блок @start_of_job.  Но я считаю, что в посте все уже есть, ведь все выводится если инструмент меняется. Мне кажется, что в посте есть команды типа: если инсрумент не изменился то не вывыводить то и то, если инструмент изменился то выводить. Осталось только найти эти зависимости, чем и буду заниматься.

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

Итог: Проблема решена. Инструмент выводится в каждом переходе с одним инструментом. Прошу кому интересен этот вопрос проверить мои манипуляции в своих постах.

Меняем значение на true

 

@start_of_job
    ; Handle what happens at start of operation(job)
    ; If using Subs we do not make tool change in @start_of_job
    if bSubs
{nb,'T', tool_number, 'M6'}
        {nb, cCb,job_name,cCe}
    else
        if bTlchg
            call @usr_ct
            bTlchg = true
        else
            {nb, cCb,job_name,cCe}
            if iPworkoffset ne iWorkoffset
------------------------------------------------
Меняем значения c xpos и ypos на xnext и ynext
 
@usr_rapid
    ; Handle output for Rapid Move (G00)
    ; Note: XYZ not allowed together on a single line 
    if !bSkipxyrapid
        if !bSyncdrapid
            if job_type eq '3-d model'
                iMotionmode = 1
            else
                iMotionmode = 0
            endif
        else
            iMotionmode = 0
        endif
        if (change(xpos)or change(ypos)) and change(zpos) ;!@#$% clear change
            bTest = true
        endif
        {nb,['G'iMotionmode:mcode_f ' '],['G'iMplane' '],[cWo,iWorkoffset' '],['G'iAbsincmode ' '],['X'xnext ' '],['Y'ynext ' ']}        
        if change(zpos)
            ;if change(xpos) eq true or change(ypos) eq true
            if bTest  ;!@#$% clear change               
                {nb,['Z'zpos ' ']}            
                bTest = false            
            else
                {['Z'zpos ' ']}
            endif
        endif
        if !bSyncdrapid
            if job_type eq '3-d model'
                {['F'nRapidfeed' ']}
            endif
        endif
        bSkipxyrapid = false
    else
        {nb,['Z'zpos ' ']}
        if !bSyncdrapid
            if job_type eq '3-d model'
                {['F'nRapidfeed' ']}
            endif
        endif
        bSkipxyrapid = false 
    endif
    if !bSyncdrapid
        bFeedoutput        = true
    endif
    change(cWo) = FALSE ;!@#$%AC Fix for ChangeBit Intermittent problem 
endp
 

Прилагаю УП

Kluch.rar

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

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

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

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

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

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

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

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

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

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

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




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