Постпроцессоры к солидкаму

Обсуждение аспектов работы с CAМ программами, подготовка моделей, настройка постпроцессоров, настройка параметров инструментов, обсуждение стратегий обработки, симуляция обработки. Вопросы по G-коду.
SVP
Мастер
Сообщения: 6135
Зарегистрирован: 19 дек 2012, 15:49
Репутация: 884
Откуда: Москва
Контактная информация:

Постпроцессоры к солидкаму

Сообщение SVP »

Есть у кого инструкция по написанию итп ?
Нужно модифицировать G2 G3
То, что есть на руках понимает только так
11111.jpg (2203 просмотра) <a class='original' href='./download/file.php?id=42571&sid=1378d04b931ded54d688ffb6dade941b&mode=view' target=_blank>Загрузить оригинал (128.51 КБ)</a>
Очевидно надо поправить тут

Код: Выделить всё

@arc
    {nb}

    if arc_direction eq CCW then
        gcode = 3
    else         ; CW
        gcode = 2
    endif
    if change(gcode) then
        {'G'gcode}
    else
        {'  '}
    endif
    {[' X'xpos] [' Y'ypos] [' Z'zpos]}

    if arc_size eq 360 then
        if arc_plane eq XY then
            {' I'xcenter_rel, ' J'ycenter_rel}
        endif
        if arc_plane eq YZ then
            {' J'xcenter_rel, ' K'ycenter_rel}
        endif
        if arc_plane eq ZX then
            {' K'xcenter_rel, ' I'ycenter_rel}
        endif
    else
        if arc_size >= 180 then
            radius = -radius
        endif
        {' R'radius}


    endif
   if m_feed_flag eq 1
      m_feed_flag = 0
      { ' F'feed}
   else
      { [' F'feed]}
   endif

endp
Вопрос как...
Может готовое что-то есть ? Все что нашел "не то".
Чуются какие-то вычисления координат, использование других переменных итп.
A-Tr
Кандидат
Сообщения: 77
Зарегистрирован: 19 май 2015, 18:36
Репутация: 40
Настоящее имя: Александр
Откуда: Харьков
Контактная информация:

Re: Постпроцессоры к солидкаму

Сообщение A-Tr »

В твоем случае процедура @arc будет выглядеть следующим образом:

@arc
{nb}

if arc_direction eq CCW then
gcode = 3
else ; CW
gcode = 2
endif

{'G'gcode,' X'xpos, ' Y'ypos, [' Z'zpos], ' I'xcenter, ' J'ycenter}


if m_feed_flag eq 1
m_feed_flag = 0
{ ' F'feed}
else
{ [' F'feed]}
endif

endp



Если не заработает, попробуй убрать квадратные скобки у координаты Z.
Ну и пиши, вдруг чё не так.
Ответить

Вернуться в «CAM пакеты»