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

Доработка построцессора. Вывод в УП координат оси В.


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

Добрый день.

 

Прошу помочь мне в доработке построцессора. Необходимо обеспечить вывод в программу координаты поворотной оси B.

Файл обработки и используемого построцессора во вложении. Программа должна иметь вид (координаты произвольно составлял, без привязки к детали):

 

"G0 X0 Y300 Z600 B0

G1 Z500 F1000

      Y200

G0 Z600

      B1 Y300

G1 Z500 F1000

      Y200

G0 Z600

      B2 Y300

       ... "

 

P.S. За помощь в долгу не останусь :)

 

Может быть дело не в посте, а в том, что я не правильно задал обработку? Но в если просматривать CLdata файл, то там ось В присутствует...

Фрезерная обработка с повородной осью.zip

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


Добрый день.

 

Прошу помочь мне в доработке построцессора. Необходимо обеспечить вывод в программу координаты поворотной оси B.

Файл обработки и используемого построцессора во вложении. Программа должна иметь вид (координаты произвольно составлял, без привязки к детали):

 

"G0 X0 Y300 Z600 B0

G1 Z500 F1000

      Y200

G0 Z600

      B1 Y300

G1 Z500 F1000

      Y200

G0 Z600

      B2 Y300

       ... "

 

P.S. За помощь в долгу не останусь :)

 

Может быть дело не в посте, а в том, что я не правильно задал обработку? Но в если просматривать CLdata файл, то там ось В присутствует...

Неудачно выбран постпроцессор прототип. Дело в том что вы используете абстрактную схему фрезерного станка с осью B, а постпроцессор взяли от токарно-фрезерного станка у которого нет оси B. Лучше взять пост Siemens  какого нибудь пятиосевого фрезера, на всякий случай заблокировать ось А, может прокатит  

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

По-моему за это отвечает команда МультиГоуту. Вам нужно зайти в егенратор постов и включить там её. Вот тело:

program MultiGoto  
  if INTERP_ > 1 then INTERP_ = 1      ! G1
  if Cmd.Ptr["Axes(AxisXPos)"]<>0 then begin
    X = Cmd.Flt["Axes(AxisXPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisYPos)"]<>0 then begin
    Y = Cmd.Flt["Axes(AxisYPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisZPos)"]<>0 then begin
    Z = Cmd.Flt["Axes(AxisZPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisAPos)"]<>0 then begin
    A = Cmd.Flt["Axes(AxisAPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisBPos)"]<>0 then begin
    B = Cmd.Flt["Axes(AxisBPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisCPos)"]<>0 then begin
    C = Cmd.Flt["Axes(AxisCPos).Value"]
  end
  if (Z<>Z@) and (NeedKorDl<>0) then begin
    KorDl = NeedKorDl; KorDl@ = MaxReal
    H@ = MaxReal
    NeedKorDl = 0
  end
  if (CycleOn=0) and
     ((X<>X@) or (Y<>Y@) or (Z<>Z@) or
      (A<>A@) or (B<>B@) or (C<>C@))
  then begin
    OutBlock    ! output to NC block
     end
  end
  XT_ = X;  YT_ = Y;  ZT_ = Z        ! save current coordinates
end
Ссылка на сообщение
Поделиться на других сайтах

 

По-моему за это отвечает команда МультиГоуту. Вам нужно зайти в егенратор постов и включить там её. Вот тело:

program MultiGoto  
  if INTERP_ > 1 then INTERP_ = 1      ! G1
  if Cmd.Ptr["Axes(AxisXPos)"]<>0 then begin
    X = Cmd.Flt["Axes(AxisXPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisYPos)"]<>0 then begin
    Y = Cmd.Flt["Axes(AxisYPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisZPos)"]<>0 then begin
    Z = Cmd.Flt["Axes(AxisZPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisAPos)"]<>0 then begin
    A = Cmd.Flt["Axes(AxisAPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisBPos)"]<>0 then begin
    B = Cmd.Flt["Axes(AxisBPos).Value"]
  end
  if Cmd.Ptr["Axes(AxisCPos)"]<>0 then begin
    C = Cmd.Flt["Axes(AxisCPos).Value"]
  end
  if (Z<>Z@) and (NeedKorDl<>0) then begin
    KorDl = NeedKorDl; KorDl@ = MaxReal
    H@ = MaxReal
    NeedKorDl = 0
  end
  if (CycleOn=0) and
     ((X<>X@) or (Y<>Y@) or (Z<>Z@) or
      (A<>A@) or (B<>B@) or (C<>C@))
  then begin
    OutBlock    ! output to NC block
     end
  end
  XT_ = X;  YT_ = Y;  ZT_ = Z        ! save current coordinates
end

 

Спасибо Вам за помощь. Кажеться я уже нашел ответы на свои вопросы.

 

Вот полезное и доходчивое видео по разработке постпроцессора:

 

+ использование штатной справки. Если получится составить толковый обработчик, прикреплю его к этой теме.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • gudstartup
      вы тоже думаете что можно все компоненты чпу заменить и ничего не изменится и предупреждение о том чтобы oprminf не восстанавливали на другой машине которое фанук встроил даже в загрузчик это просто алармисткий текст и ничего не будет..... ну и ну и где написано что она mate как например здесь с чего тогда базовый чпу mate если гл.плата не mate мне непонятно из-за экрана что ли
    • статист
      Охренеть, ни за что бы не догадался. Хоть бы словом где обмолвились об этом в документации. Короче нужна команда EMODIF, E_ID, 3, N_ID где E_ID - номер элемента, который мы собираемся модифицировать. Так как используется BEAM188, то у него не два узла оказывается рассматривается, а три, где первые два принадлежат элементу, а третий узел - направляющий. И соответственно число 3 - это номер узла балки, который мы собираемся модифицировать, то есть направляющий узел. И мы этот узел соответственно заменяем на узел с номером N_ID. И тогда сечение реально вращается. Разобрался по этому видео.    
    • Александр1979
      Материнка такая в руководстве есть. На 0i-D я менял материнку, опции не слетели. 
    • gudstartup
      @Viktor2004 кстати конкретно модели автора в руководстве нет хотя оно последней редакции 18 года
    • Viktor2004
      конкретно на этой не менял. На каких менял, написал выше
    • gudstartup
      какие платы и на каких системах вот в чем ворос конкретно на этой возникут проблемы
    • Viktor2004
      ну да. А то что я менял платы это мои бредовые фантазии   Ну исправили в паспорте. И что?
    • gudstartup
      это догадки и гадание на кофейной гуще а япривожу документ где написано про то что прочитайте пункт 4.11 а там представляете вот что 4) Замена печатной платы может привести к изменению идентификационного номера ЧПУ. Проверьте это на Экран ЧПУ. Если оно отличается от описанного в техническом паспорте, исправьте его.  
    • Viktor2004
      я менял все платы. И на форуме наверное не я один их менял. И никто еще не писал что при этом у него слетел сертификат Возможно ID номера проверяются только в момент установки опции, а когда они уже установлены и мирно хранятся в OPRM INF возможно ти уже на ID наплевать
    • gudstartup
      для кого это написано CAUTION Before replacing a printed circuit board, be sure to read Section 4.11, “OPTION INFORMATION FILE” to confirm the procedure.  
×
×
  • Создать...