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

Резьбофрезерование


Hиkolaй

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

Всём доброго время суток. Помогите в следующем вопросе.  Это программа для Резьбофрезерование на  стойке Siemens 802c

В основе лежит круговая интерполяция по спирали. При запуске делает проход и заканчивается, а должна зделать 11 витков в низ. 

R1=0(x0)

R2=0(y0)

R3=5(z безопасности.) 

R4=0(z начало обработки) 

R5=1.25(шаг)

R6=11(кол.витков)

R7=6.35(радиус)

R8=0

G54G90G0X=R1Y=R2

M3S1500

M8

T1Z=R3

G1Z=R4F500

G1G42D1G91Y=R7F280

MRK:R8=R8+1

G2 J-R7 Z-R5

If (R8<>R6) GOTOB MRK

G1G40 Y-R7

G0 G90 Z200M9

M30

Не могу понять где допустил ошибку.?

Может кто-то может предложить другую альтернативу программе? 

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


УП должна быть такой

 

R1=0      ;x

R2=0      ;y

R3=5      ;z безопасности.

R4=0      ;z начало обработки 

R5=1.25 ;шаг

R6=11    ;кол.витков

R7=6.35 ;радиус

R8=0

G54G90G0X=R1Y=R2

M3S1500

M8

T1Z=R3

G1Z=R4F500

G1G42D1G91Y=R7F280

MRK:R8=R8+1

G2 J=-R7 Z=-R5

If (R8<R6) GOTOB MRK

G1G40 Y=-R7

G0 G90 Z200M9

M30

 

B CIMCO отрисованы 11 витков

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

У меня выдаёт ошибку Z нужно писать через K в строке G2 J=-7 Z=-R5. После замены Z на K всё отрабатывает но только по 2 координатам по Z не опускается 

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

 

Может я что ввёл не так.  Вот смотрите мне нужно Резьбофрезерование скажем М14х1. 25 фреза у меня  R6 

G55G17G90G94S1200T1M3

G0 Z50

G2X7Y0Z-13.75 I0 J0 K0 TURN=11

[X7 Y0 Z-13.75 - конечная точка

I0 J0 K0 - центр окружности 

TURN=11- количество витков] 

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

Это канавка - недолго подправить....

 

N15 r1=1 ; startovyj Z
N20 r2=2 ; shag spirali
N25 r3=-4 ; glubina kanavki
N30 r4=20 ; R naruzhnyj kanavke
N35 r5=2 ; R instrumenta
N40 r6=0 ; pripusk
N45 r7=100 ; ploskost' bezopasnosti posle frezerovki
N50 r40=9000
N55 r41=99
N60 ;************************** konec vvoda parametrov
N65 r13=r4-r5-r6; R kanavki po instrumentu
N70 r14=r1-r3; obshaja glubina
N75 r15=trunc(r14/r2); kolicestvo vitko
N80 r16=r1-r2*r15; Z polnyh vitkov
N85 ;************************************konec rascheta
N90 mcall prog
N95 g0x0y-40m3m85
N100 mcall
N105 m30
N110 prog:g91x=r13y0
N115 z=AC(r1)
N120 g3x0y0z=r16i=-r13j0turn=r15f=r41
N125 if r16==r3 goto prig
N130 x0y0z=r3i=-r13j=0turn=1
N135 prig:g3x0y0i=-r13j0
N140 g0g90z=r7
N145 m17

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

С началом  и концовка вроди всё понято но с точками перехода че-то не пойму. Я написал так для М14х1. 25, а потом универсально под любую метрическую зезьбу.

R1=1(безоп. по Z) 

R2=1.25(ШАГ)

R3=-0.6  (глубина канавки резьбы) 

R4=7(наружний радиус резьбы) 

R5=6(радиус инструмента) 

R6=0  (припуск) 

R7=100  (безоп. Плос. После фрез.) 

R40=1200 (обороты) 

R41=200 (подача) 

R13=R4-R5-R6

R14=R1-R3

R15=TRUNC[R14/R2]

R16=R1-R2*R15

Дальше я не понял 

Mall prog - это точка возврата (MRK:) 

G0 X0 Y-40 m3 m85 -   это строка обезательна

 mcall-?? 

 M30

MARK1:G91 X=R13 Y0

Z=R1 

G2 X0 Y0 Z=R16 I=-R13 J0 TRUNC=R15 F=R4

IF R 16==R3 GROTON MRK1

X0 Y0 Z=R3 I=-R13 J=0 TRUNC=1

MAK2:G3 X0 Y0 I=-R13 J0 

G0 G90 Z=R7

 ПОДСКАЖИТЕ С СЕРЕДИНОЙ И МОЖЕТ ВСЁ ПОЛУЧИТСЯ 

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

G2 J-R7 Z-R5

Что-то совсем букв мало. Сейчас так пишут на новом оборудование? 

Раньше это в инкременте выглядело так:

G2 X Y I J-R7 Z-R5 или  G2 X Y I J-R7 K-R5, как то так, что нибудь правильно. 

 

 


 

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

Помогите пожалуйста. Я где-то допустил ошибку при написании программы. Не могу понять где. Это программа для резьбо-фрезирования . У меня на фануке всё работает . Только пришлось (While) заменить на (If GotoB) . Программу пишу для Sinumerik 802.

 

G54G17G90G40G94S270F300T1M3

G0X0Y0

R1=0;STAR.ANGLE

R2=180;ANGLE BETWEEN HOLES 

R11=2;NUMBER HOLES

R7=14.6;INITIAL D

R20=1.5;STEP

R6=-10;DEPTH

R18=50;RADIUS CIRCLES HOLES

R24=0;X CENTER CIRCLES

R25=0;Y CENTER CIRCLES

R9=600;F PLOSKOST

;PROGRAMMA

R13=R20*3

R14=R6-R13

R15=R7/2

R16=TRUNC(ABS(R14/R20

G158 X=R24 Y=R25

R26=R16

MRK2:

G17G90

G0 X=R18 Y=R1

Z=R13

G1 G91 G42 X=R15 F=R9

MRK1:

G2 X=-R15 Y0 Z=-R20 CR=R15

R26=R26-1

IF R26>0 GOTOB MRK1

G40

G1 X=-R15

G0Z100

R11=R11-1

R1=R1+R2

R26=R16

IF R11>0 GOTOB MRK2

G0Z100M9

G0X0Y0

M30

 

 

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

 

Это рабочая с фанука 

G54G17G90G40G94S270F300T1M3

 

G0X0Y0

 

#1=0;STAR.ANGLE

 

#2=180;ANGLE BETWEEN HOLES 

 

#11=2;NUMBER HOLES

 

#7=14.6;INITIAL D

 

#20=1.5;STEP

 

#6=-10;DEPTH

 

#18=50;RADIUS CIRCLES HOLES

 

#24=0;X CENTER CIRCLES

 

#25=0;Y CENTER CIRCLES

 

#9=600;F PLOSKOST

 

;PROGRAMMA

 

#13=#20*3

 

#14=#6-#13

 

#15=#7/2

 

#16=FIX[ABS[#14/#20]]

 

G52 X=#24 Y=#25

 

#26=#16

 

WHILE[#11GT0]DO2

 

G17G90G16

 

G0 X#18 Y#1

G15

 

G43 Z=#13

 

G1 G91 G42 X#15 F#9

 

WhILE[#26GT0]DO1

 

G2 I-#15 J0 Z-#20

 

#26=#26-1

 

END1

 

G40 G1 X-#15

 

G0Z100

 

#11=#11-1

 

#1=#1+#2

 

#26=#16

 

END2

 

G0Z100M9

 

G0X0Y0

 

M30

Ссылка на сообщение
Поделиться на других сайтах
22 hours ago, Hиkolaй said:

Я где-то допустил ошибку при написании программы. Не могу понять где.

а покадрово не пробовали отрабатывать, на каком шаге выдаёт ошибку?

не вдаваясь в правильность заданных операторов, синтаксис команды TRUNC выглядит странным когда используются значения в скобках, обычно скобки закрывают а у вас только открыты

22 hours ago, Hиkolaй said:

R16=TRUNC(ABS(R14/R20

 

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

а покадрово не пробовали отрабатывать, на каком шаге выдаёт ошибку?

не вдаваясь в правильность заданных операторов, синтаксис команды TRUNC выглядит странным когда используются значения в скобках, обычно скобки закрывают а у вас только открыты

 

Простите  ошибка когда переписывал сюда 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Alexey8107
      Всем доброго дня. Имеется ивановский обрабатывающий центр ИС-800, в нем установлены: PSM-45HVi A06B-6120-H045 SPM-30HVi A06B-6121-H030#H550 Возникла авария 9030 Overcurrent in the converter input circuit. Если смотреть В-65285 в этом случае на PSM должна отображаться 1, а на SPM - 30. Так оно и есть на самом деле. Документ ссылается на пункт 3.1.1, в свою очередь этот пункт говорит о неисправности PSM и следует проверить Входящее питание. Скорее всего здесь имеется ввиду питание управления, оно 240 В и стабильно Рекомендуют проверить реактор. Сразу откидываем, т.к. дело до включения силового питания еще даже не доходит, МСС отключен. Да и реактор штатный, всю жизнь работал с этим реактором. Проверить IGBT. Проверить проверил как мог, на КЗ, но дело до силовухи еще не доходит, ее питания еще нет и физически включиться не может из за MCC(ну это естественно, блок в аварии). Принципиально все рекомендации. На LEADWELL была похожая ситуация, на торможении шпинделя на PSM помнится выпадала авария 1, а на шпинделе не помню уже что. Тоже думали на PSM, а судя по всему мозг вынимал рекуператор в SPM. Т.к. на шине 500 вольт на торможении шпинделя напряжение вылетало далеко за 500 вольт выше. Здесь тоже нечто подобное, SPM опрокидывает PSM в аварию. Вобщем при включении питания станка, запитывается только управление на PSM, а он в свою очередь раздает 24 вольта на все остальные блоки по CXA2A, если все нормально и ЧПУ включена, замыкается контакт МСС, разрешая подачу силового питания на PSM. Шаги загрузки на полностью исправном станке PSM    SPM   -          A   -         50   -         12(или 18)   -         -- После включения ЧПУ и подачи силового питания   0         0 У нас PSM    SPM   -          A   -         50   -         12(или 18)   1         30 Включение силовухи невозможно. Что было сделано: 1. Проверены все питания, 240 СХ1А, 24 СХА2А, силовое питание, везде порядок. 2. Проверены IGBT на PSM и SPM, явного замыкания нет. 3. Проверены обмотки серво двигателя шпинделя. На всех 0,4 ома(сопротивление щупов 0,2 + обмотки 0,2 ома). Сравнил с заведомо исправным таким же двигателем(он стоит в другом таком же станке и работает), все тоже самое, На массу КЗ нет. Да и силовухи тоже нет, так что это бессмысленно. 4. Откинул от PSM разъем СХА2А(тупо обесточил остальные блоки от 24 вольт), включил питание управления, PSM перестал опрокидываться в ошибку, на дисплее "-". Ждал долго, не опрокидывается. Силовое питание подавать не стал, ибо чревато для остальных блоков, а скидывать шинку постоянного тока честно говоря поленился. 5. С соседнего станка снял плату управления SPM и переставил в неисправный станок, по номерам они идентичные. Станок включился и даже подал силовое питание на PSM без всяких аварий. Гонял пару минут в холостую, все было нормально, но после опрокинулся с той же ошибкой 1 и 30 на PSM и SPM соответственно. 6. Взял плату управления SPM с неисправного станка и установил в исправный. Станок включился и сколько бы не гонял, и даже шпинделем крутил, не опрокидывается. Т.е. к обоим платам претензий ноль. После вернул все обратно. Исправный станок работает как ни в чем не бывало, неисправный сразу опрокидывается в аварию почти сразу после включения управляющего питания. На ЧПУ ошибка 9030 и какие то еще по осям, но они связаны с отсутствием питания на шине постоянного тока если не ошибаюсь, так что это нормально. Итого, силовуха явных признаков неисправности не имеет, и даже на какое то время с другой платой включает силовое питание(скорее всего это связано с разбросом параметров защит на разных платах). К самому PSM тоже вроде претензий не должно быть, хотя В-65285 указывает именно на него. В истории с LEADWELL точно помню, что тоже все указывало на PSM(в том числе 1 на дисплее), и даже сервисный инженер FANUC был уверен в неисправности именно PSM. По факту, неисправен был как раз SPM. К платам управления тоже никаких претензий, обе работают в исправном станке. Единственное логическое объяснение, неисправность силовухи SPM. НО!!! Шина постоянного тока даже не думает запитываться, так что и тут с опрокидыванием сразу после включения есть засада! Ну не тестирует же SPM и PSM силовую часть напряжением 24 вольта??? Ведь до включения силового питания в этом случае даже не доходит из-за аварии! Может у кого есть еще идеи или опыт устранения таких дефектов? Помнится у фанука была типовуха на платах А16В-2203-0623 с датчиками тока, они отгорали и привод отваливался в аварию по одной из фаз. Это были привода шпинделя и двух осей в одном корпусе, были такие у нас на токарных. Сервисники фанука тогда их тучами меняли... Хотя тут я думаю не наш случай
    • Kelny
      Даже при всём при этом оно не всегда корректно работало, так что даже в старых версиях было быстрее удалить размер и потом вставить заново, чем искать эти точки размеров, а потом пытаться их привязать к новому месту.   Возможно это всего лишь глюк новой версии, в последних версиях они похоже штатно закладываются.
    • maxx2000
      @davidovka я их сразу ссыпаю в TEMP,  в тех что живы нет отметок о создании current_session.pro. Интересно что сам current_session.pro создаётся, но не обновляется дата в отличии от даты модели. Может быть и вправду менял какие нить настройки и забывал сохранить
    • Ahito
    • maxx2000
      т.е. доверять разработчикам оснований нет. Ясно-понятно
    • clavr
      все так и было до 2024 версии. размеры не импортировались. теперь вот в 2024 так нельзя. может где-то в настройках поменять что нужно? все перерыл, пока не нашел
    • arsenev
      Первый свободный номер инструмента   int list $toolnumblist = extract(folder('TOOL'), 'Tool.Number.Value') int $newToolNumb = 1 while member( $toolnumblist, $newToolNumb) {     $newToolNumb = $newToolNumb + 1 } Message Info 'Первый свободный номер инструмента - ' + $newToolNumb     Инструменты с повторяющимися номерами   int list $toolnumbers = extract(folder('tool'),'Number.Value') int $i = remove_duplicates($toolnumbers) string $op = '' foreach $n in $toolnumbers {     string list $names = extract(filter(folder('tool'),'this.Number.Value == "' + $n + '"'),'Name')     if size($names) > 1 {         $op = $op + 'Инструменты с повторяющимся номером T ' + $n + CRLF         foreach $name in $names {             $op = $op + $name + CRLF         }         $op = $op + CRLF     } } message info $op     Удаление выбранного   Макрос, который проверяет тип объекта, а затем позволяет выбрать один и удалять выбранные части. Я связал это с ctrl+d.   string list $rootTypes = {'toolpath','featureset','pattern','boundary','model'} string list $selectedTypes = {} foreach $rt in $rootTypes {     if entity_exists(entity($rt,'')) {         entity $ent = entity($rt,'')         if number_selected($ent.RootType, $ent.Name) > 0 {             int $i = add_last($selectedTypes,$rt)         }     } } if size($selectedTypes) <= 0 {     return } int $index = -1 if size($selectedTypes) == 1 {     $index = 0 } else {     $index = input choice $selectedTypes 'Wich Type to remove?' } if $index != -1 {     String $cmd = 'DELETE ' + $selectedTypes[$index] + ' "' + entity($selectedTypes[$index],'').Name + '" SELECTED'         DoCommand $cmd }
    • PETR_1
      Можно переназначить правую и центральную (колесо) кнопки с помощью бесплатной программы X-Mouse Button Control (есть портабельная версия). Это переназначение будет работать только для компаса.
    • Kelny
      Может изменяемый вами размер импортирован из модели?  Обычно переносилось удержанием левой кнопки мыши, а если сделать двойной клик, то нужно потом выбрать новый объект уже без удержания кнопок мыши.
    • Kelny
      Отключить галочки режима большой сборки. Инструменты-Параметры...-Настройки пользователя-Сборки
×
×
  • Создать...