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

Редактирование постов SolidCAM


CNC_SKILL

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

Приветствую уважаемые,  

Мне нужно обработать зеркальную деталь, т.е. проги отзеркалить относительно плоскости, это без проблем делается через трансформацию уп в SC (в принципе то уж эту ф-ю и применил), но у себя в посте я наткнулся на блок который может задействовать для этого цикл ЧПУ, но что нужно сделать в SC, чтобы он так сказать активировался и записался в УП. кто-нить сталкивался с этим?

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


Только что, Андрей Фомин сказал:

задействовать для этого цикл ЧПУ

какой такой цикл?

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

ну например на фануке G51, но это не важно, G код любой может быть, вопрос в другом как блок в посте миррор активировать 

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

вопрос в другом как блок в посте миррор активировать 

ну для этого должны быть хорошие знания языка программирования Gpp На котором написан пост а также его алгоритм и связку с файлом станка !

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

Привет! подскажите где именно задается параметр machine_plane ?

1. В посте?

2. В файле станка?

3. Берется из СОЛИДА?

 

Если можно ткните пальцем где именно...

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

подскажите где именно задается параметр machine_plane ?

А что конкретно надо получить?

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

Добрый день!

Нужно понимаем откуда берется machine_plane !?

Хочу в посте от этого избавиться:

 

@machine_plane

   if machine_plane eq XY

      plane_letter='Z'

   endif

   if machine_plane eq ZX

      plane_letter='Y'

   endif

endp

 

и далее от этих условий

 

if machine_plane eq ZX

   call @invert_xpos

endif

.................

@invert_xpos

   local logical xpos_modal

      xpos_modal = change(xpos)

      xpos = xpos*(-1)

      change(xpos) = xpos_modal

endp

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 20.03.2017 в 23:11, Andrey410 сказал:

Приветствую коллеги. Подскажите как решить такую проблему:

В посте прописан увод всех осей по G53 в машинный ноль в начале и конце программы, но если обработки идут подряд одним и тем же инструментом, то G53 вставляется после каждой обработки. Тратится много лишнего времени и откровенно действует на нервы. Как можно это убрать, оставив вывод только в начале и в самом конце?

P.S. Если в следующей обработке задействован другой инструмент то этого не происходит.

Поделитесь Вашим постом, интересно, как реализован уход в нули после каждого перехода.

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

Тут поднимался вопрос о реализации вызова смены инструмента и корекции G43 в каждом переходе. Вот пост.

https://drive.google.com/open?id=1qBD6_EfoYnABY-Wmcr-3FQnXCLkbfGuG

Ссылка на сообщение
Поделиться на других сайтах
В 08.12.2017 в 06:51, pawa88 сказал:

Добрый день!

Нужно понимаем откуда берется machine_plane !?

Хочу в посте от этого избавиться:

 

@machine_plane

   if machine_plane eq XY

      plane_letter='Z'

   endif

   if machine_plane eq ZX

      plane_letter='Y'

   endif

endp

 

и далее от этих условий

 

if machine_plane eq ZX

   call @invert_xpos

endif

.................

@invert_xpos

   local logical xpos_modal

      xpos_modal = change(xpos)

      xpos = xpos*(-1)

      change(xpos) = xpos_modal

endp

открой файл с пост-ром и забань их с помощью точки с запятой  ";".

например...

   ; if machine_plane eq XY
    ;    gcode = 17

Это кода G17,G18,G19.

В 17.12.2017 в 23:14, sudomex2016 сказал:

Поделитесь Вашим постом, интересно, как реализован уход в нули после каждого перехода.

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

в процедуре @change_tool надо забанить выход в ноль станка,т.е. G53 и просто например добавить выход по Z.

Вот       {nb,'G0 Z',tool_z_level}
            {nb'M09 M05'}
           ;{nb,'G0 G53 Z0'}
            {nb,'M01'}

,а в процедуре @end_program добавить ее...

{nb,'M09 M05'} 
{nb,'G0 Z',tool_z_level}

{nb,'G0 G53 Z0'}   или {nb,'G74 Z1=0 ; Referent point'}

{nb, 'M30'}

Ссылка на сообщение
Поделиться на других сайтах
В ‎22‎.‎12‎.‎2017 в 19:29, mariklg13 сказал:

 

Привет! Вы немного не поняли вопрос, но уже разобрался с этим.

Вот, кому нужно:

Параметр machine_plane

берется из программы SOLIDCAM "параметры ноля детали".

Безымянный.jpg

Ссылка на сообщение
Поделиться на других сайтах
В 22.12.2017 в 19:29, mariklg13 сказал:

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

Теперь понял, я думал у вас по другому реализовано, через "Homing & Zero Returning axis " 

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

здравствуйте. подскажите, как сделать дуги по оси XZ? пост выдает через точки, но хотелось бы через дуги. пост под трех осевой фрезерный станок на основе gMilling_3x

2018.01.02_09h49m21s_022_.jpg

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

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

Пост тут не причем, это стратегия HSS не выдает дугами ! Попробуйте стратегию HSM линейная ! 

 

73.png

Ссылка на сообщение
Поделиться на других сайтах
В 02.01.2018 в 13:04, seneoovi сказал:

здравствуйте. подскажите, как сделать дуги по оси XZ? пост выдает через точки, но хотелось бы через дуги. пост под трех осевой фрезерный станок на основе gMilling_3x

По порядку:

1. Пост таки должен поддерживать вывод дуг в XZ / YZ, как в *vmid, так и в *.gpp

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

конкретно стандартный gMilling_3x - поддерживает.5a4d1a4371d32_.PNG.01ee67d4ac72bdef438c37bfa01159c4.PNG

@usr_arc
    ; Handle output for arc movement (G02/G03)
    if bFeedoutput
        change(feed) = true
        bFeedoutput  = false
    endif
    if arc_direction eq CCW then
        iMotionmode = 3
    else
        iMotionmode = 2
    endif
    if arc_plane eq XY
        iMplane = 17
    endif
    if arc_plane eq ZX
        iMplane = 18
    endif
    if arc_plane eq YZ
        iMplane = 19
    endif
    {nb,['G'iMotionmode:mcode_f ' '],['G'iMplane' '],['G'iDiametercomp' '],[cWo,iWorkoffset' '],['G'iAbsincmode ' ']}
    {['D'iDiameteroffset' '],['X'xpos ' '],['Y'ypos ' '],['Z'zpos ' ']}
    if arc_plane eq XY then
        if iArcmode eq 1 or (arc_size eq 360 and iArcmode eq 3)
            {'I'xcenter ' ', 'J'ycenter ' '}
        endif
        if iArcmode eq 2 or (arc_size eq 360 and iArcmode eq 4)
            {'I'xcenter_rel ' ', 'J'ycenter_rel ' '}
        endif
        if (iArcmode eq 3 or iArcmode eq 4) and arc_size ne 360  
            if arc_size >= 180 then
                radius = -radius
            endif
            {'R'radius' '}
        endif        
    endif
    if arc_plane eq ZX then
        if iArcmode eq 1 or (arc_size eq 360 and iArcmode eq 3)
            {'I'xcenter ' ', 'K'zcenter ' '}
        endif
        if iArcmode eq 2 or (arc_size eq 360 and iArcmode eq 4)
            {'I'xcenter_rel ' ', 'K'zcenter_rel ' '}
        endif
        if (iArcmode eq 3 or iArcmode eq 4) and arc_size ne 360
            if arc_size >= 180 then
                radius = -radius
            endif
            {'R'radius' '}
        endif
    endif
    if arc_plane eq YZ then
        if iArcmode eq 1 or (arc_size eq 360 and iArcmode eq 3)
            {'J'ycenter ' ', 'K'zcenter ' '}
        endif
        if iArcmode eq 2 or (arc_size eq 360 and iArcmode eq 4)
            {'J'ycenter_rel ' ', 'K'zcenter_rel ' '}
        endif
        if (iArcmode eq 3 or iArcmode eq 4) and arc_size ne 360
            if arc_size >= 180 then
                radius = -radius
            endif
            {'R'radius' '}
        endif
    endif

    {['F'feed ' ']}
    change(nRapidfeed)          = true

2. Для HSM-линейной допуск расчета переходов должен быть точнее допуска аппроксимации дуг

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

5a4d1e2cbd239_2.PNG.41ff7cc415d6b4740e8c3ed346d914d4.PNG

3. Еще настоятельно рекомендую проверить как будет отрабатываться УП, если в станке используется программная, либо станочная компенсация угла разворота в плоскости XY, дуги в XZ / YZ могут выполняться некорректно.

Изменено пользователем NickEL1000
Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, seneoovi сказал:

теперь новый вопрос. какую стратегию лучше использовать для чернового снятия вот такой детали ( зажимается она чуть ниже середины. фреза D50 для быстрой подачи. съем по 0,8мм. ) пробовал "3Д модель" но как то она сного слева в пустую ходит. хотелось бы чтобы послойно прямолинейно с учетом выступа, как бы ступеням

Границу определи.

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

Добрый день! Подскажите пожалуйста, как создать новый цикл сверления. Хочу реализовать цикл сверления G83 с I J и K, сейчас в посте есть только G83 с Q (Peck). В mashine_id сделал по аналогии с другими циклами, в файле .gpp настроен только вывод этих циклов. А где описывается логика, чтоб солидкам понимал какие проходы рисовать.

 

P.S: Прошу прощения за качество "скринов", комп сейчас без интернета.

s5g770slL5.jpg

 

3xV9JO051z.jpg

 

DB8XozmV96.jpg

 

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

Добрый день! Подскажите пожалуйста, как создать новый цикл сверления.

Создание цыкла описовал ранее надо порыться в точно помню в мае 2017

 

Ветка вопросы новичка 10 страница пост от 22 апреля

Изменено пользователем Povar1
Ссылка на сообщение
Поделиться на других сайтах
27 минут назад, АйнурБатталов сказал:

А где описывается логика, чтоб солидкам понимал какие проходы рисовать.

Это описывается в посте (пост фрезерный) :

 if drill_type eq G83
        iDrillmode = 83
        if P_Dwell eq 0
            change(P_Dwell) = false
        endif
       {nb, cDr'G'iDrillmode ' X'xpos' Y'ypos ' R'drill_upper_z' Z'drill_lower_z,' Q'Q_Peck}
          if I_FirstPeck ne 0
              {' I'I_FirstPeck}
          endif
          if J_ReduceAmount ne 0
              {' J'J_ReduceAmount}
          endif
          if K_MinimumDepth ne 0
              {' K'K_MinimumDepth}
        endif
        {[' P'P_Dwell],' F'feed' 'cDrCys}

    endif

 

6875.png

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

В моделировании тоже сверлит с уменьшением глубины сверления?

Спасибо!

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...