/
Grbl_mm_TC_Rotary.pp
185 lines (133 loc) · 5.14 KB
/
Grbl_mm_TC_Rotary.pp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
+================================================
+
+ Grbl - Vectric machine output configuration file
+
+================================================
+
+ History
+
+ Who When What
+ ======== ========== ===========================
+ EdwardP 28/11/2014 Written from GCode_mm.pp
+ Added arc move support
+ EdwardP 11/02/2015 Commented out arcs as these
+ slow GRBL performance appear
+ interpolated anyway
+ EdwardP 18/06/2015 Explicitly set absolute mode (G90)
+ Mark 24/11/2015 Updated for interim 0.9 spec.
+ Renaming to be machine specific.
+ Removing M30 from Footer.
+ EdwardP 01/02/2018 Updated according to 1.1 spec
+ Changed to 1.3 precision
+ Spindle off (M5) in footer
+ Added VTransfer Direct Output
+ Ferreri 5/7/2018 Added G04 DWELL & M6 TOOLCHANGE
+ Ferreri 12/27/2019 Uncommented arc commands
+ Ferreri 1/25/2020 Ummmm...and related arc variables
+ Added Rapid Plunge to StartZ
+ Ferreri 3/8/2023 Added Y Rotary (Wrap) Support
+
+ ======== ========== ===========================
POST_NAME = "Grbl (mm) TC WRAP (*.nc)"
FILE_EXTENSION = "nc"
UNITS = "MM"
DIRECT_OUTPUT = "VTransfer"
RAPID_PLUNGE_TO_STARTZ = "YES"
ROTARY_WRAP_Y = "Y"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+------------------------------------------------
+ Block numbering
+------------------------------------------------
LINE_NUMBER_START = 0
LINE_NUMBER_INCREMENT = 10
LINE_NUMBER_MAXIMUM = 999999
+================================================
+
+ Formatting for variables
+
+================================================
VAR LINE_NUMBER = [N|A|N|1.0]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR X_POSITION = [X|C|X|1.4]
VAR Y_POSITION = [Y|C|Y|1.4]
VAR Z_POSITION = [Z|C|Z|1.4]
VAR ARC_CENTRE_I_INC_POSITION = [I|A|I|1.4]
VAR ARC_CENTRE_J_INC_POSITION = [J|A|J|1.4]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
+================================================
+
+ Block definitions for toolpath output
+
+================================================
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"G17"
"G21"
"G90"
"T[T]"
"[S]M3"
"G0[ZH]"
"G0[XH][YH]"
+---------------------------------------------------
+ Commands output for tool change
+---------------------------------------------------
begin TOOLCHANGE
"M5"
"M6 T[T]"
"M3[S]"
+---------------------------------------------
+ Commands output for a dwell move
+---------------------------------------------
begin DWELL_MOVE
"G04 P[DWELL]"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin RAPID_MOVE
"G0[X][Y][Z]"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"G1[X][Y][Z][F]"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"G1[X][Y][Z]"
+---------------------------------------------------
+ Commands output for the first clockwise arc move
+---------------------------------------------------
begin FIRST_CW_ARC_MOVE
"G2[X][Y][I][J][F]"
+---------------------------------------------------
+ Commands output for clockwise arc move
+---------------------------------------------------
begin CW_ARC_MOVE
"G2[X][Y][I][J]"
+---------------------------------------------------
+ Commands output for the first counterclockwise arc move
+---------------------------------------------------
begin FIRST_CCW_ARC_MOVE
"G3[X][Y][I][J][F]"
+---------------------------------------------------
+ Commands output for counterclockwise arc move
+---------------------------------------------------
begin CCW_ARC_MOVE
"G3[X][Y][I][J]"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"M5"
"G0[ZH]"
"G0[XH][YH]"
"M2"