Re: Не гравер, но маленький фрезер. В процессе.
Добавлено: 27 июн 2014, 13:10
Вот это еще не хорошо - сначала на безопасную высоту, потом в 0,0.
Сейчас накидаю тебе пример.G0 X0 Y0 Z#960
Статьи, обзоры, цены на станки и комплектующие.
https://cnc-club.ru/forum/
Сейчас накидаю тебе пример.G0 X0 Y0 Z#960
Код: Выделить всё
%
(program: RASTROVIY STOL)
#<step> = 20
#<xnum> = 17
#<ynum> = 13
#<z> = -3
#<zsafe> = 5
#<feed> = 400
#<penetration_feed> = 100
(контур)
G0 Z#<zsafe>
G0 X0 Y0
G1 Z#<z> F#<penetration_feed>
G1 X[#<step>*#<xnum>] F#<feed>
G1 Y[#<step>*#<ynum>]
G1 X[0]
G1 Y[0]
G0 Z#<zsafe>
#<i> = 0
O100 WHILE [#<i> LT #<xnum>]
#<i> = [#<i>+1]
G0 Y0 X[#<step>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 Y[#<step>*#<ynum>] F#<feed>
G0 Z#<zsafe>
O100 END WHILE
%
А какой планируется вакуум-насос? Тоже актуально.nERV писал(а):вакуумный стол с квадратиками
Благодарю! Сейчас попробую.Nick писал(а):от обработка контура и
Вакуумный насос уже есть. От какой-то медицинской установки, позже выложу фото, если интересно. Производительность небольшая, но думаю что для столика 200х300 хватит.Сергей Саныч писал(а):А какой планируется вакуум-насос?
Код: Выделить всё
%
(program: RASTROVIY STOL)
#<step> = 20
#<xnum> = 17
#<ynum> = 13
#<z> = -3
#<zsafe> = 5
#<feed> = 400
#<penetration_feed> = 100
(контур)
G0 Z#<zsafe>
G0 X0 Y0
G1 Z#<z> F#<penetration_feed>
G1 X[#<step>*#<xnum>] F#<feed>
G1 Y[#<step>*#<ynum>]
G1 X[0]
G1 Y[0]
G0 Z#<zsafe>
#<i> = 0
O100 WHILE [#<i> LT #<xnum>]
#<i> = [#<i>+1]
G0 Y0 X[#<step>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 Y[#<step>*#<ynum>] F#<feed>
G0 Z#<zsafe>
O100 END WHILE
#<i>=0
O200 WHILE [#<i> LT #<ynum>]
#<i>=[#<i>+1]
G0 X0 Y[#<step>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 X[#<step>*#<xnum>] F#<feed>
G0 Z#<zsafe>
O200 END WHILE
% Код: Выделить всё
O100 WHILE [#<i> LT #<xnum>/2]
#<i> = [#<i>+1]
G0 Y0 X[#<step>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 Y[#<step>*#<ynum>] F#<feed>
G0 Z#<zsafe>
G0 X[#<step>*#<i>+1]
G1 Z#<z> F#<penetration_feed>
G1 Y[0] F#<feed>
G0 Z#<zsafe>
O100 END WHILE
Небольшая - это сколько? Столик у меня 160х260, насоса на 57 л/мин (3,4 куб.м/час) явно недостаточно. Ну, то есть держит нормально, но малейший зазор при обработке - и вакуум теряется. Производитель стола рекомендует насосы на 14 кубометров, а жаба на такие душитnERV писал(а):Производительность небольшая, но думаю что для столика 200х300 хватит
Хм. А как это будет работать? Или здесь приоритет мат. операций не выполняется?Nick писал(а):G0 X[#<step>*#<i>+1]
Не знаю, но небольшаяСергей Саныч писал(а):Небольшая - это сколько?
Код: Выделить всё
G0 X[#<step>*[#<i>+1]]Код: Выделить всё
%
(program: RASTROVIY STOL)
G21
G17 G40 G49 G80 G90
#<step>=20 (RAZMER RASTRA/ MM)
#<xnum>=17 (RAZMER PO X/ RASTROV)
#<ynum>=11 (RAZMER PO Y/ RASTROV)
#<dpth>=-3 (GLUBINA PAZOV)
#<sfh>=5 (VISOTA BEZOPASNOSTI)
#<fd>=400 (F PODACHI)
#<fp>=120 (F VREZANIYA)
#<cnt>=0 (SCHETCHIK 1)
M3 S10000
G4 P6
(RAMKA)
G0 Z#<sfh>
X0 Y0
G1 Z#<dpth> F#<fp>
F#<fd>
X[#<step>*#<xnum>] (Y0)
Y[#<step>*#<ynum>]
X0
Y0
G0 Z#<sfh>
(/RAMKA)
(RASTRI)
G1 Z#<dpth> F#<fp>
O50 while [#<cnt> LT #<ynum>] (shag po y)
#<cnt>=[#<cnt>+1]
F#<fd>
Y[#<step>*#<cnt>]
X[#<step>*#<xnum>]
#<cnt>=[#<cnt>+1]
Y[#<step>*#<cnt>]
X0
O50 END WHILE
#<cnt>=0
G0 z#<sfh>
Y0
G1 Z#<dpth> F#<fp>
O60 while [#<cnt> LT #<xnum>] (shag po X)
#<cnt>=[#<cnt>+1]
F#<fd>
X[#<step>*#<cnt>]
Y[#<step>*#<ynum>]
#<cnt>=[#<cnt>+1]
X[#<step>*#<cnt>]
Y0
O60 END WHILE
G0 z#<sfh>
X0 Y0
M5 M30
%
Код: Выделить всё
(program: RASTROVIY STOL)
#<stepX> = 20
#<stepY> = 40
#<xnum> = 17
#<ynum> = 13
#<z> = -3
#<zsafe> = 5
#<feed> = 400
#<penetration_feed> = 100
#<n> = 2
(контур)
G0 Z#<zsafe>
G0 X0 Y0
G1 Z#<z> F#<penetration_feed>
G1 X[#<stepX>*#<xnum>] F#<feed>
G1 Y[#<stepY>*#<ynum>]
G1 X[0]
G1 Y[0]
G0 Z#<zsafe>
#<i> = 0
o100 WHILE [#<i> LT [#<xnum>-1] ]
o101 IF [[#<n> MOD 2] eq 0]
#<i> = [#<i>+1]
G0 Y0 X[#<stepX>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 Y[#<stepY>*#<ynum>] F#<feed>
G0 Z#<zsafe>
o101 ELSE
#<i> = [#<i>+1]
G0 X[#<stepX>*#<i>]
G1 Z#<z> F#<penetration_feed>
G1 Y0 F#<feed>
G0 Z#<zsafe>
o101 ENDIF
#<n> = [#<n> + 1]
O100 ENDWHILE
G0 Y0 X[#<stepX>*[#<i>+1]]
#<i> = 0
#<n> = 2
o102 WHILE [#<i> LT [#<ynum>-1]]
o103 IF [[#<n> MOD 2] eq 0]
#<i> = [#<i>+1]
G0 Y[#<i>*#<stepY>]
G1 Z#<z> F#<penetration_feed>
G1 X0 F#<feed>
G0 Z#<zsafe>
o103 ELSE
#<i> = [#<i>+1]
G0 Y[#<i>*#<stepY>]
G1 Z#<z> F#<penetration_feed>
G1 X[#<stepX>*#<xnum>] F#<feed>
G0 Z#<zsafe>
o103 ENDIF
#<n> = [#<n> + 1]
O102 ENDWHILE
m2nERV писал(а):Переписал из своей же прогграммы, только заменил if на while.
Код: Выделить всё
O50 while [#<cnt> LT [#<ynum>-1]] (shag po y)Код: Выделить всё
%
(program: STOL)
G21
G17 G40 G49 G80 G90
#<step>=3 (SHAG OBRABOTKI/MM)
#<xnum>=150 (RAZMER PO X/MM)
#<ynum>=120 (RAZMER PO Y/MM)
#<dpth>=-5.1 (GLUBINA ZA PROHOD)
#<num>=5 (KOL-VO PROHODOV)
#<sfh>=3 (VISOTA BEZOPASNOSTI)
#<fd>=800 (F PODACHI)
#<fp>=120 (F VREZANIYA)
M3 S10000
G4 P6
(PERIMETR)
#<cnt>=1
G0 Z#<sfh>
O10 WHILE [#<cnt> LE #<num>]
X0 Y0
(VREZANIE)
G1 X#<step> Z[#<dpth>*#<cnt>/2] F#<fp>
X0 Z[#<dpth>*#<cnt>]
(/VREZANIE)
F#<fd>
X#<xnum>
Y#<ynum>
X0
Y0
G0 Z#<sfh>
#<cnt>=[#<cnt>+1]
O10 END WHILE
(/PERIMETR)
#<cnt>=0
#<cn>=1
(VREZANIE)
O20 REPEAT [#<num>]
G1 X#<step> Z[#<dpth>*#<cn>/2] F#<fp>
X0 Z[#<dpth>*#<cn>]
(/VREZANIE)
M98 P150
G0 Z#<sfh>
X0 Y0
#<cn>=[#<cn>+1]
O20 END REPEAT
G0 Z#<sfh>
X0 Y0
M5 M30
O150
(PLOSKOST)
O30 WHILE [#<cnt> LE [#<ynum>-#<step>*2]]
#<cnt>=[#<cnt>+#<step>]
G1 F#<fd>
Y#<cnt>
X#<xnum>
#<cnt>=[#<cnt>+#<step>]
Y#<cnt>
X0
O30 END WHILE
(/PLOSKOST)
M99
%использовали подобные (если по фото угадал)nERV писал(а):Вот такой вакуумник хочу попробовать использовать.
не знает кто такой М98(все коды , поддерживаемые емс)nERV писал(а):но лцнц ругается на М98
Да, обыкновенный масляный роторно-пластинчатый вакуумник. Только в заводской версии моторчик дохленький(90вт) стоит и греется прилично. Хочу поставить асинхронник на 0.18 или 0.37квт и частотничек.nkp писал(а):внутренности - как у НВРа