Программирование в Code Wizard EdgeCam

Страницы: 1
RSS
Программирование в Code Wizard EdgeCam, Добавление функции GOTO
Добрый день! Есть такой вопрос. Дорабатывал ли кто-то постпроцессор для станка в EdgeCam Code Wizard?
Задача: как доработать постпроцессор для станка в Code Wizard, чтобы использовалась функция GOTO (переход к N1,N2...,
где N1,2.. - это вызов инструмента, чтобы можно было выбирать инструмент)?  

(N1 T30 D6.0 ENDMILL   )
(N2 T31 D3.0 BALLNOSE   )
(N3 T30 D6.0 ENDMILL   )
(N4 T31 D3.0 BALLNOSE   )

G90
G15 H3
GOTO N1
GOTO N2
GOTO N3
GOTO N4

N1
(работает инструмент T30)
...
N2
(работает инструмент T31)
...
и так далее

Как это реализовать? Станок OKUMA.
Есть функция вызова подпрограмм через функцию M98. В циклах обработки в EC есть возможность  использования подпрограмм: используется вызов подпрограммы при  повторяющейся траектории скажем по Z. Но не думаю, что можно задать вызов подпрограммы, в которой используется выбор инструмента (T## M06). По крайней мере это мое мнение
Цитата
vas1985 пишет: Как это реализовать?
Если задача в следующем:
1) В шапке программы разместить код:
Цитата
vas1985 пишет:
(N1 T30 D6.0 ENDMILL )
(N2 T31 D3.0 BALLNOSE )
(N3 T30 D6.0 ENDMILL )
(N4 T31 D3.0 BALLNOSE )

G90
G15 H3
GOTO N1
GOTO N2
GOTO N3
GOTO N4

2) В теле программы вместо  стандартного T30 D6.0 ENDMILL выдать N1

...то задача мне видится вполне выполнимой с помощью стандартных команд ColonCode, то есть путем кастомизации постпроцессора.
В двух словах это будет как-то так:

В шапке программы понадобится %LOAD, чтобы пробежаться по всем инструментам, пронумеровать и записать их названия.
Потом c помощью %GOTO нарисовать нужное количество GOTO N...
А в конструкторе ToolChange удалить все и заменить на N + текущий номер.
Минут двадцать работы:)
Андрей, я так понял команда %LOAD, автоматически пронумерует инструменты 1,2,3...и т.д.? букву "N" стоит поставить перед командой. С GOTO такая же ситуация? все создастся автоматически по количеству инструментов?
Вот так сейчас формируется количество инструментов в постпроцессоре, вид EdgeCam и вид программы(инструмент их количество по N приходится дописывать в ручную, а хотелось бы автоматически). Подскажите куда дописать команду %LOAD на картинке постпроцессора (картинку приложил)?
2.jpg (113.28 КБ)
1.jpg (212.83 КБ)
Задача проще, чем я написал с лёту. Функция %LOAD тут даже не понадобится.

В Set Tooling Data List нужно просто применить переменную LOOPNUMBER. В моем постпроцессоре у нее был префекс Р, поэтому я отредактировал Формат Тэйбл.

В First Toolchange нужно добавить цикл, который сформирует "GOTO N" лист. См. картинки 8)
ToolList.jpg (103.75 КБ)
FirstTC.jpg (144.39 КБ)
Андрей, спасибо! Очень помогло. Проблему со счетчиком после буквы N со списком инструментов решил так:

;CODE:#USER1=#HEADER
[DELETE][BLKNUM](N[USER-1][TURRETNO][TOOLDIAM] [TOOLTYPE])

А с числом после N в теле программы так:

;CODE:#USER3=IDNUMBER
[DELETE][BLKNUM] N[USER-3]

с последующим указанием CODE ID в выборе инструмента.
Андрей, есть еще задача. Хочу добавить алгоритм расточки отверстия фрезой по винтовой интерполяции.
Сделал вот такую программку и засунул в CodeWizard->Holy Cycle->Bore. Теперь при выборе в EdgeCam Hole->Bore в коде генерируется данная программка.
Вопрос: как можно сделать, чтобы значение радиуса (в данном случае I0.9 - Диаметр отверстия минус диаметр фрезы пополам) считался автоматически с указанием данных отверстия и фрезы в EdgeCam и соответственно считалась глубина расточки? Возможно ли такое реализовать?

[DELETE][BLKNUM] G0Z0.0
[DELETE][BLKNUM] G1G42 [<C>XMOVE][<C>YMOVE] D01 F1000
[DELETE][BLKNUM] G1G91X-0.9 (I)
[DELETE][BLKNUM] G2I0.9Z-0.15 (z)

[DELETE][BLKNUM](ukazi glubinu)

[DELETE][BLKNUM] G2I0.9Z-0.15

[DELETE][BLKNUM] G2I0.9
[DELETE][BLKNUM] G1X0.9
[DELETE][BLKNUM] G0G90Z5.0
[DELETE][BLKNUM] G0[<C>XMOVE][<C>YMOVE]
[DELETE][BLKNUM] G1G40[<C>XMOVE][<C>YMOVE]
[DELETE][BLKNUM] G0[ZCLEAR]
Цитата
vas1985 пишет: Возможно ли такое реализовать?
Теоритически возможно все, это ведь Edgecam :|
Вопрос только в том, что именно нужно реализовать и какими средствами.

Например, вы пытаетесь реализовать винтовую интерполяцию на уровне постпроцессора. Для меня это странно. Я бы начал с цикла сверления и опции "Helical" (Винтовая интерполяция). Единственное неудобство в таком варианте состоит в том, что нужно выбирать тип инструмента не Hole Bore, а EndMill. Зато все нужные данные должны быть в постпроцессоре по дефолту.
Вы имеете ввиду опцию "Helical" (Винтовая интерполяция), представленную в Profiling? Как быть тогда с корректором на радиус фрезы?
Я имею в виду то, что сказал:
Цитата
Андрей Ф-ко пишет: Я бы начал с цикла сверления и опции "Helical" (Винтовая интерполяция).
Helical.jpg (97.97 КБ)
В 2014-м имеется только вот это окно :(
121.jpg (53.3 КБ)
В какой версии EC появляется эта функция?
Цитата
vas1985 пишет: В 2014-м имеется только вот это окно
А, ну да. Еще и не лицензионная, наверное 8(
Тогда там должен быть Thread Mill, который работает по тому же принципу: винтовая интерполяция с помощью концевой фрезы.
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)