На вопрос не ответили - в векторе все таки как?
У меня круг - вроде одна дуга. Хотя, SheetCam выделяет на нем 4 точки, будто их там 4, но УП делает все равно для одной.
интерполяция может быть относительных координатах и абсолютных,
У меня дуги в относительных, ошибки тут точно нет. Если такое имеет место, даже предпросмотр УП будет исковеркан.
Суть проблемы вроде бы выяснил. Я пишу это, основываясь на научном тыканье пальцем в небо, не претендую на 100% правоту, но вдруг кому-то пригодится.
Кружки не режутся в том случае, если в макросе M3 присутствуют какие-либо линейные перемещения (в той плоскости, в которой и будет наша окружность), в моем случае - это ХУ. Эти передвижения в макросе дают некую погрешность положения по осям, относительно того где резак находился до выполнения макроса(точка, из которой рассчитана дуга) и после, скажем, в сотку. Из-за этого возникают какие-то внутренние проблемы Mach с рисованием кругов. Т.е. основной виновник - перемещения в макросе.
Решения:
1. Отказ от дуг в принципе. Все работает отлично, но УП, разумеется, становится тяжелее. Как повлияет на качество реза не было времени проверить.
function OnArc()
post.ArcAsMoves(0.02)
end
2. Отказ от перемещений в макросе. Также все работает, но меня не устраивает. Моя хотет красивый поиск металла.
3. Деление окружности на несколько дуг - по идее поможет, но в SheetCam нет штатных решений, а мне лень делать с нуля. Пробовал делать УП из АртКама - вроде нормально катается.
4. Снижение точности описания дуг в постпроцессоре SheetCam (изначально там везде 0.0000), скажем, до десятки (допустимо для плазмы, но для фрезера уже не приемлемо). Тоже все работает.
function OnArc()
if(arcAngle <0) then
post.ModalText (" G03")
else
post.ModalText (" G02")
end
post.NonModalNumber (" X", endX * scale, "0.0")
post.NonModalNumber (" Y", endY * scale, "0.0)
post.Text (" I")
post.Number ((arcCentreX - currentX) * scale, "0.0")
post.Text (" J")
post.Number ((arcCentreY - currentY) * scale, "0.0")
post.ModalNumber (" F", feedRate * scale, "0.0###")
post.Eol()
end
Покручу варианты 1 и 4 в работе, посмотрю на рез и успокоюсь. Из темы не ухожу, может выложу потом рез на разных вариантах.
Всем спасибо за внимание.
Сообщение отредактировал Insane: 22 Февраль 2013 - 16:26