Как стать ЧПУшником. Продолжение.
Меня тут просили выложить еще примеров параметричесого программирования.Ну раз просили - ловите)Кстати, да, КАМщики - это тема не для вас.
Шли мимо - идите дальше.Ни кто не оспаривает преимущества САПР. Я сам пользуюсь Сименсом, Носорогом, Спрутом, Компасом и, естественно, Симкой.
Вот только что вы будете делать, если нужно отфрезеровать шестигранник, а компа под рукой нет.Или расфрезеровать отверстие (без засверливания) плунжерной фрезой. да, так бывает на наклонных плоскостях или калёнке.Уметь программировать вручную - это не изъян человека.
Это может очень пригодиться. И даст понимание, как работают многие циклы станка.Ну и, ИМХО, это развивает мышление, которое очень нужно наладчику.Итак, в прошлый раз все примеры были приведены с оператором IF и GOTO. На этот раз сделаем примеры с WHILE.Я постараюсь убрать всё лишнее, касаемое только моего станка. Ну уж как получится.
Пример первый.Нужно расфрезеровать отверстие на 100, а фреза есть только, ну скажем, на 14. Решение - движение фрезы по спирали . Это обеспечит нам постоянный % работы диаметра фрезы. КАМщики, конечно, немедленно кинутся рисовать модель (особо извращённые - в Арткаме).Пока они рисуют модель и генерят траекторию мы Напишем программку и начнем работать.
#100=10 (NACHALNIY RADIUS)
#101=0 (NACHALNIY UGOL)
#102=1 (SHAG RADIUSA)
#103=50 (RADIUS OTVERSTIYA)
#150=40
G0 Z0
X0 Y0
G16
WHILE[#100LE#103] DO1
G3 X#100 Y#101 R#100
#100=#100+#102
#101=#101+#150
END 1
G15
Немного пояснений для начинающих. Мы не будем извращаться, поминать старину Архимеда, и выписывать формулу спирали.
Есть такая удобная штука - полярная система координат.Обычно применяется, когда нужно просверлить отверстия на радиусе. Не нужно считать их координаты.В полярной системе X это радиус, Y это угол. Включается она G16, отключается G15. Примеры приводить не буду, их навалом в инете.
Второй случай применения полярной системы координат. Спиральное сверление. Бывает, когда засверлиться нет возможности. или когда нет подходящей фрезы и работаем чем есть. Например, отверстие нужно на 20, засверлено оно на 14, а длинная фреза есть только на 16.Да мало ли какие еще случаи. Спирально сверление есть и в Симке. Я, по возможности, упростил и убрал всё, что мог.
#100=25(RADIUS OTVERSTIYA)
#120=0 (SHAG)
121=40 (DLINNA INTERPOLACII)
#150=0 (Z0)
#151=1 (SHAG PO Z)
#155=-50 (Z KONECHNAYA)
G0 Z1
X0 Y0
G16
WHILE[#150GE#155] DO1
#120=#120+#121
G1X#100
G3 X#100 Y#120 R#100 Z#150
#150=#150-#151
END 1
G15
тут в начале писал про шестигранник. Или сколькинибудь гранник. Посчитать точки в уме не получится. Калькуляторы есть не на всех станках. Может программа и выглядит перегруженной всякой фигнёй, но, если приглядеться, можно увидеть, что точки на окружности вычисляются по формуле, которую дают еще в младших классах. Х=COS(a) Y=SIN(a).
Любой правильный сколькинибудь вписан в окружность. Углы любого правильного многогранника можно и в уме посчитать, а радиус описанной окружности дают на чертеже.Я, если честно, написал этот пример чисто для этого поста. А потом он мне внезапно пригодился)))
В примере используется работа с заходом на коррекцию радиуса фрезы. В зависимости от указанного радиуса фрезы точка захода пересчитывается программой. После /М30 приведен второй пример. Там можно не вбивать коррекцию на радиус в стойку. Программа сама рассчитает эквидистанту. Мне, например, попадалась стойка CNC-8 на которой коррекция не работала.
#100=6 (SKOLKI UGOLNIK)
#110=50 (RADIUS OPISANNOY OKR)
#120=0 (NACHALNIY UGOL)
#177=50(DIAMETR FREZI)
#101=360/#100 (UGOL UGLA)
#180=#110*2+#177 (ZAHOD NA KORREKCIYU X)
#181=#110 (ZAHOD NA KORREKCIYU Y)
#130=0 (Z 0)
#131=10 (SHAG PO Z)
#133=-100 (Z KONECHNAYA)
G90 G54 G0 G43 H1 G0 Z200
X0Y0
X#180 Y#181
WHILE [#130GE#133]DO1
Z#130
WHILE [#120LE360]DO2
#150=#110*COS[#120]
#151=#110*SIN[#120]
G1 G41D1 X#150 Y#151
#120=#120+#101
END 2
G1G40X#180 Y#181
#120=0#130=#130-#131
END1
/M30
#100=6 (SKOLKI UGOLNIK)
#110=50 (RADIUS OPISANNOY OKR)
#120=0 (NACHALNIY UGOL)
#177=50(DIAMETR FREZI)
#101=360/#100 (UGOL UGLA)
#180=#110*2+#177 (ZAHOD NA KORREKCIYU X)
#181=#110 (ZAHOD NA KORREKCIYU Y)
#130=0 (Z START)
#131=10 (SHAG PO Z)
#133=-100 (Z KONECHNAYA)
G90 G54 G0 G43 H1 G0 Z200
X0Y0
X#180 Y#181
WHILE [#130GE#133]DO4
Z#130
WHILE [#120LE360]DO5
#150=[#110+#177/2]*COS[#120]
#151=[#110+#177/2]*SIN[#120]
G1 G41D1 X#150 Y#151
#120=#120+#101
END 5
G1G40X#180 Y#181
#120=0
#130=#130-#131
END4
После /М30 приведен второй пример. Там можно не вбивать коррекцию на радиус в стойку. Программа сама рассчитает эквидистанту. Мне, например, попадалась стойка CNC-8 на которой коррекция не работала.Кстати, если кому-то лень писать G2 или G3, то можно смело воспользоваться моей программкой, просто поставив 360 углов ))))
Ну и бонус:Мама кота Чемодана. Она настолько сурова, что не позволяет себя гладить.Она сама гладит себя людьми, когда считает нужным.
P.S.: По традиции, предоставляю проставление тэгов своим благодарным читателям. У меня фантазии не хватает.