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

постпроцессор на 4 оси


xa0c

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

Добрый день коллеги! Поделитесь постпроцессором на 4 оси(желательно *.opt) или подскажите почему имеющийся постпроцессор режет УП по 10000 кадров. Заранее за помощь благодарен. Вот текст постпроцессора:

 

Скрытый текст

 

machine deckel11

define format ( A )
 decimal point  = true
 decimal places = 3
end define

define format all
 tape position = 1
end define

word order = ( + A )

define keys
 azimuth axis     not used
 elevation axis   = A
end define

define codes
 coolant on   =  M2    8
 coolant off  =  M2    9
end define

block order                 = true
integer 10                  = 1
integer 24                  = 0
spindle azimuth rotation    = false   #mozna zbytecny
spindle elevation rotation  = false
elevation axis units        = degrees
elevation axis direction    = negative

azimuth axis parameters  = ( 0. 0. 0.  0. 0. 0. )
elevation axis parameters = ( 0. 0. 0.  1. 0. 0. )
linear axis limits = ( -450.0 450.0 -220.0 220.0 -320.0 320.0 )
rotary axis limits = ( 0.0 0.0 -360.0 360.0 0.1 4 )
retract at angular limit = true
withdrawal amount        = 0.000

block start     = 5
block increment = 2

define block tape start
 ";Program vytvoren pomoci postprocesoru FCM22_4osy_kontinualni_new"
 ";nazev programu:"
 ";polotovar (XxYxZ):"
 ";nastroj (typ a prumer):"
 ";vypocitany cas:"
 "N1 M40"
 N BlockNum ; G1 0 ; z coordinate FromZ
end define

define block tool change first
 N BlockNum ; T ToolNumber
end define

define block tool change
 N BlockNum ; M1 6 ; T ToolNumber
end define

define block move linear
 # promenna urcujici zapsani radku v bloku
 edit inta 0

 if (feedrate = 9999)
   N BlockNum
   edit inta 1
 end if

 # test, zda-li osa A je otocena dokola
 if (Elpos = -360. or Elpos = 360.)

  # test, zda-li je otocena osa v teto pozici poprve
  if (OldEl = -360. or OldEl = 360.)
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # test, zda-li otocena osa v teto pozici uz byla
  if (inta = 0)
   N BlockNum ; " ; *************************************************** pohyb osy A kolem +- 360 stupnu"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

 end if

 # test, ze nebyla posledne osa A otocena dokola
 if (inta = 0 and OldEl > -360. and OldEl < 360.)
  N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
  edit inta 1
 end if

 # test, ze osa A uz neni otocena dokola (ale byla)
 if (inta = 0)

  # nyni chci nulovat
  if (Elpos = 0)
   N BlockNum ; " ; *************************************************** podminka 1"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # chci do +-180
  if (Elpos = -180. or Elpos = 180.)
   N BlockNum ; " ; *************************************************** podminka 2"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; " ; ***************************************************************************************"
   N BlockNum ; " ; ***************************************************************************************"
   N BlockNum ; " ; ***************************************************************************************"
   N BlockNum ; " M0 ; mozny problem s tocenim o 180 stupnu !!!!"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # osa A se pretocila o +360 a pokracuje dale do +A
  if (OldEl = -360. and Elpos > 0. and Elpos < 180.)
   N BlockNum ; " ; *************************************************** podminka 3"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # osa A se pretocila o -360 a pokracuje dale do -A
  if (OldEl = 360. and Elpos > -180. and Elpos < 0.)
   N BlockNum ; " ; *************************************************** podminka 4"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # osa A se pretocila o +360 a vraci se do nuly
  if (OldEl = -360. and Elpos > 180. and Elpos < 360.)
   N BlockNum ; " ; *************************************************** podminka 5"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; A ( Elpos - 360. ) ; feedrate ; spindle ; M1 ; M2
   N BlockNum ; " G92 " ; A ( Elpos )
   edit inta 1
  end if

  # osa A se pretocila o +360 a vraci se do nuly
  if (OldEl = -360. and Elpos > -180. and Elpos < 0.)
   N BlockNum ; " ; *************************************************** podminka 6"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if

  # osa A se pretocila o -360 a vraci se do nuly
  if (OldEl = +360. and Elpos > -360. and Elpos < -180.)
   N BlockNum ; " ; *************************************************** podminka 7"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; A ( Elpos + 360. ) ; feedrate ; spindle ; M1 ; M2
   N BlockNum ; " G92 " ; A ( Elpos )
   edit inta 1
  end if

  # osa A se pretocila o -360 a vraci se do nuly
  if (OldEl = -360. and Elpos > 0. and Elpos < 180.)
   N BlockNum ; " ; *************************************************** podminka 8"
   # jen pro pripad, kdy by ridici system automaticky nenuloval
   N BlockNum ; " G92 A0"
   N BlockNum ; linear ; tool length ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; spindle ; M1 ; M2
   edit inta 1
  end if
 end if
end define

define block move rapid
 N BlockNum ; rapid ; G2 ; x coordinate ; y coordinate ; z coordinate ; elevation axis ; feedrate ; spindle ; M1 ; M2
end define

define block tape end
 N BlockNum      ; end of prog
end define

end

 

 

fcm22_4osy_kontinual_new.opt

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


По умолчанию в вашем посте действует строка:

maximum tape length        =  2450.0000

которая ограничивает ваши программы и делит на части.

 

Попробуйте добавить в свой пост строку (можно прямо перед строкой define block tape start):

maximum tape length        =  999999999999

 

 

 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • gudstartup
      считывание происходит при помощи вх\вых сигналов контроллера plc 
    • gudstartup
      @Maks Horhe так все таки скиньте бэкап эмулируем ваше чпу в cncguide и посмотрим куда поедет?  можете снять видео с фиксацией координатных позиций после каждого кадра. Выложу вашу программу пусть программисты посмотрят все ли в ней ок. %O0002 G40 G17 G94 G90 G49 G80 N1 G91 G28 Z0.0 N2 G91 G28 X0.0 Y0.0 N3 G91 G28 B0.0 C0.0 N4 M03 S200 N5 G90 G0 G53 B0.0 C0.0 N6 G54 N7 X0.0 Y0.0 N8 G90 G43 H01 N9 G90 G0 X0.0 Y0.0 N10 G90 G0 Z200.0 N11 G01 Z10.0 F1500. N12 M00 N13 G00 Z200.0 N14 G40 G49 G69 N15 G00 G53 Z0.0 N16 G00 G54 B0.0 C0.0 N17 G68.2 X0.0 Y0.0 Z0.0 1135. J39.2044 K-129.2315 N18 G53.1 N19 G01 X0.0 Y0.0 F1500 N20 G90 G43 H01 N21 G90 G01 X0.0 Y0.0 F1500 N22 G90 G01 Z200. F1500 N24 M00 N25 G00 Z200. N26 G40 G49 G69 N27 G91 G28 Z0.0 N28 G28 X0.0 Y0.0 N29 G91 G28 B0.0 C0.0 N30 M5 N31 M30
    • gudstartup
      @karlf 530 считывает ключ по специальному протоколу при помощи plc и получает его серийный номер а из него определяет возможные режимы доступа. там нет драйвера а есть plc модуль или несколько эти модули написаны на питоне  надпись smartkey исчезает с экрана при запуске чпу??
    • ДОБРЯК
      Для того, чтобы получить правильные высшие) формы при виртуальном эксперименте, нужно сделать грамотную КЭ модель. От разговора на эту тему вы постоянно уклоняетесь.  То нет компьютера под рукой, сделать простейший тест, то теряете интерес. :=) Сходимости энергии деформации при расчетах статики, недостаточно для точного определения высших собственных форм и частот.  Для того, чтобы грамотно использовать метод конечных элементов, нужно сделать много-много тестов в статике, динамике и ... Одной кнопки и двух конечных элементов в 3Д программе недостаточно для определения высших собственных форм...  У вас в качестве инструмента всего два конечных элемента, шести узловая несовместная оболочка Тимошенко и десяти узловой тетраэдр. И еще контакты при решении задачи на собственные числа. Вам ли говорить про правильность определения высших собственных форм для сложных изделий... :=)    
    • vad0000
      Покажите схему с разрешением на движение
    • vad0000
      Вход, а не выход Вытащить Аналоговый вход и все, как будто туда ничего не подключено И если мы подключим сигнал к энкодеру оси Х, то он стнтет одинаковый с аналоговым входом, который не подключен?
    • Snake 60
      @waze4534  Посмотрите вверх и прочитайте текст на красной полоске...
    • kkk
      Я так понимаю, что предупреждение про "касательные" не просто так выскакивает. Если скруглить прямую стыковку отрезков эскиза (минимальным радиусом) то все работает даже без объединенной кривой, достаточно эскиза.
    • karlf
      Подскажите пожалуйста, может кто сталкивался. Станок DMU-50 на стойке TNC 530, перестал определяться ключ доступа. Сам ключ вроде работает, если переключать на нём режимы, то в шкафу на соответствующих блоках лампочки тоже переключаются. Но изначально был уровень доступа 4, а теперь уровни доступа не активны. Ключ только один, запасных нет. Есть какой-то старый бэкап, пробовал его накатить, но какой-то он непонятный - станок грузится, но почти в конце загрузки выдаёт какую-то ошибку по параметрам. Может кто знает в каком из разделов и в какой папке искать установленные драйверы ключа?
    • YuriySt54
      В данной конструкции можно сразу одним телом делать и обрезать. Но меня интересовало, можно ли сразу при построении массива ограничить лишнее.
×
×
  • Создать...