103

Как стать ЧПУшником. Продолжение.1

Меня тут просили выложить еще примеров параметричесого программирования.Ну раз просили - ловите)Кстати, да, КАМщики - это тема не для вас.

Шли мимо - идите дальше.Ни кто не оспаривает преимущества САПР. Я сам пользуюсь Сименсом, Носорогом, Спрутом, Компасом и, естественно, Симкой.


Вот только что вы будете делать, если нужно отфрезеровать шестигранник, а компа под рукой нет.Или расфрезеровать отверстие (без засверливания) плунжерной фрезой. да, так бывает на наклонных плоскостях или калёнке.Уметь программировать вручную - это не изъян человека.


Это может очень пригодиться. И даст понимание, как работают многие циклы станка.Ну и, ИМХО, это развивает мышление, которое очень нужно наладчику.Итак, в прошлый раз все примеры были приведены с оператором 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.: По традиции, предоставляю проставление тэгов своим благодарным читателям. У меня фантазии не хватает.