Михаил 95

Помогите в постпроцессоре переставить м3 ,м5

Постпроцессор неправильно ставит М3 и М5 , как эти строки переписать всю голову сломал .

Помогите плиз )

Код который он выдаёт .

 

N1 G21 (Metric)
N2 G17 M3
N3 X29.95 Y10. Z20.
N4 Z0.
N5 G3 X29.95 Y10. I-2.2
N6 G1 Z20.
N7 M5
N8  (Metric)
N9 M3
N10 X140. Y93.
N11 Z0.
N12 G3 X140. Y93. I-60.
N13 G1 Z20.
N14 M5
N15  (Metric)
N16 M3
N17 X288. Y0.
N28 Z0.
N29 Y186.
N20 G3 X286. Y188. I-2.
N21 G1 X0.
N22 G3 X-2. Y186. J-2.
N23 G1 Y0.
N24 G3 Y-2. I2.
N25 G1 X286.
N26 G3 X288. J2.
N27 G1 Z20.
N28 M5 
N29 M28 
N30 M30  
 
А нужно вот так .
 
N1 G21 (Metric)
N2 G17 
N3 X29.95 Y10. Z20.
N4 Z0.
N5 M3
N6 G3 X29.95 Y10. I-2.2
N7 M5
N8 G1 Z20.
N9  (Metric)
N10 X140. Y93.
N11 Z0.
N12 M3
N13 G3 X140. Y93. I-60.
N14 M5
N15 G1 Z20.
N16  (Metric)
N17 X288. Y0.
N18 Z0.
N19 M3
N20 Y186.
N21 G3 X286. Y188. I-2.
N22 G1 X0.
N23 G3 X-2. Y186. J-2.
N24 G1 Y0.
N25 G3 Y-2. I2.
N26 G1 X286.
N27 G3 X288. J2.
N28 G1 Z20.
N29 M5 
N30 M28 
 
 
 

 


Пробовал вписать строку на включение М3 

 
  OUTPUT "N" +Str(BlockN)+" M3"
 
Получилась ерунда , по отверстиям работает как нужно а по прямым не работает .
 
 
program Circle
  BlockN = BlockN+1
  OUTPUT "N" +Str(BlockN)+" M3"
  if cld[4] > 0 then INTERP_ = 3 else INTERP_ = 2   ! G3/G2
  XC_ = cld[1] - XT_                            ! I,J,K in increments always
  YC_ = cld[2] - YT_
  ZC_ = cld[3] - ZT_
  X = cld[5]                                  ! X,Y,Z in absolutes
  Y = cld[6]
  Z = cld[7]
  if ABS_INC = 91 then begin                  ! X,Y,Z in increments
    X = X - XT_
    Y = Y - YT_
    Z = Z - ZT_
  end
 
Может кто сталкивался с этим ?
 
Постпроцессор для плазмы .

Поделиться сообщением


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

Похоже команды M3/M5 включают и выключают плазму. Мне кажется здесь нужно делать немного по другому. Если внимательно посмотреть на текст то видно что плазма включается всегда после кадра  где выводится Z0, а выключается после кадра где Z>0. Так как эти кадры - линейное перемещение, а не  перемещение по дуге окружности, то и вывод M3/M5 необходимо организовать в программе AbsMove (вывод кадров с G1)
Поскольку вы переделываете пост из фрезерного,  имя регистра этой команды Msp. (Для фрезерного станка  M3/M5 это включение/выключение шпинделя )

В постпроцессоре можно сделать следующее:

1. В PartNo должна быть строка Msp=-1; Msp@=Msp, если есть другие присвоения каких то значений Msp то нужно их убрать. Смысл:  Msp=-1, предыдущее значение тоже равно -1, т.е. с учетом модальности это значение в УП не выводить пока его значение не изменится.
2. В AbsMove сразу после команды OutBlock вписать строки:
  if z=0 then begin                ! Если Z=0 то

        Msp=3                          ! Присваиваем регистру Msp значение равное трем
        OutBlock                      ! выводим в кадр M3  (этой командой номер выводится автоматом)

  end else begin                   ! иначе

        if z>0 then Msp=5        ! если Z>0 тогда присваиваем регистру Msp значение равное пяти

        OutBlock                      ! выводим в кадр  M5
  end

Как то так.           
 

 

Поделиться сообщением


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

Михаил, не надо ли в этом случае также и блокировать вывод оси Z ? или по факту она нужна будет в УП?

Поделиться сообщением


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

В процессе резки ось Z регулирует высоту сопла в зависимости от кривизны металла . 


После всех манипуляций с постпроцессором выводит так.

 

N1 
N2 G17
N3 G21 (Metric)
N4 M3
N5 X29.95 Y10. Z20.
N6 Z0.
N7 G3 X29.95 Y10. Z0. I-2.2 J0.
N8 G1 Z20.
N9 M5
N10  (Metric)
N11 M3
N12 X30.25 Y40.75
N13 Z0.
N14 G3 X30.25 Y40.75 Z0. I-2.5 J0.
N15 G1 Z20.
N16 M5
N17  (Metric)

Поделиться сообщением


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

Михаил, лучше всего, если Вы сможете выложить свой пост (а еще лучше и проект).

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

Поделиться сообщением


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

Всем привет . Пост процессор пытаюсь переделать стандартный PCNC11001 , не могу найти посты под плазму или для лазера хоть посмотреть как это все у них работает . Сейчас на плазме все пишется вручную , хочется модернизации и ускорить этот процесс. ) 

Поделиться сообщением


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

Прикрепите фаил вашего поста и фаил CLData проекта

Поделиться сообщением


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

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

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

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

  • Реклама

  • Ближайшие события

    Предстоящих событий не найдено
  • Дни рождения сегодня

    1. Alex_vit
      Alex_vit
      (37 лет)
    2. ankapul
      ankapul
      (34 года)
    3. Botsman_67
      Botsman_67
      (50 лет)
    4. DimonM
      DimonM
      (40 лет)
    5. KennethGred
      KennethGred
      (41 год)
    Просмотреть все