Looks like a meatmincer plate?
Complicated arrays just aren't simple.
You either need a CAM program, or learn how to program.
All the holes are in straight lines and are equally spaced,so one way is to write a subroutine that you specify the start point, and the number of holes in the row and the step to the next hole.
When all that is done you you write a higher level program that figures out the start points.
That's how I did it 15 years ago, with no CAM software.
Once the start point is specified, you the subroutine can use incremental amounts for the step, and a counter for the number of holes, or you you can absolute like used here.
The subroutine needs turns off incremental when done otherwise it becomes confusing.
Is it stainless steel? I imagine so, and you need to run the same program with a center drill first before you start drilling.
Once you read the manuals and learn how to program it just gets easier.
This program was for a larger plate than your program, very similar number of holes.!!!!!!!!!!! Geez, I thought I was done with that job.!!
With all those holes you probably need a method with lots of M1s so you can set optional stop when the drill sounds like it needs changing.
I used 2 drills, and while one was running, sharpened the spare.
Or you could use replaceable drill tips like Iscar have.
This was using a BOSCH CC120 controller, but if you print this out and read it you should be able to figure how I did it.
BSRPxx is subrountine call. The subroutines are after N142
BEQP32 is Branch if equal to $32
All the $XXs are labels for branching.
Vxx is a variable name.
TSTVx tests the variable before a conditional branch.
Where it says SWITCH OFF, the machine had a test to see oif an option switch was on or off. G23 Pxx is where the switch is tested.
This is how the operator interacted with the program.
This didn't use G83 drill cycle, but that would be the better way to do chip-breaking. N324 is where the hole is drilled.
As you see it is the deepest nested part of the program.
I can answer the odd question to clear this up but after not doing it for 15 years, nor having any emulation software, I can't write it for you.
At a guess this drill 564 holes using about 400 lines of code.
Center drilling, 6.8mm hole, then 8mm and 12mm, or there may have been all three different hole sizes.
Can't remember too much. It just worked, and the operator followed the prompts.
Code:
(DFS,P 18,DR.SHREDDER PLATE.M,RWED)
N 1 (PLATE.NC 05-FEB-1996)
N 2 M00
N 3 (TURN ON SWITCH TO SKIP INSTRUCTIONS - HIT START)
N 4 (12MM 6.8 AND 8MM DEBURR DEPTH)
N 5 VDA=-6.6 VDB=-4 VDC=-4.3
N 6 ()
N 7 ()
N 8 ()
N 9 ()
N 10 G23 P13
N 11 M00
N 12 (G54 IS ZREF FOR CENTRE DRILL 1 MM ABOVE JOB)
N 13 M00
N 14 (G55 IS ZREF FOR 6.8MM DRILL 1 MM ABOVE JOB)
N 15 M00
N 16 (G56 IS ZREF FOR 8.0MM DRILL 1 MM ABOVE JOB)
N 17 M00
N 18 (G57 IS ZREF FOR 12MM DRILL 1 MM ABOVE JOB)
N 19 M00
N 20 (G58 IS ZREF FOR DEBURRING DRILL 1 MM ABOVE JOB)
N 21 M00
N 22 (REFERENCE POINT IS CENTRE OF JOB)
N 23 M00
N 24 (SET G54 G55 G56 G57 G58 X AND Y AT CENTRE OF JOB)
N 25 (-----------------------------)
N 26 $13
N 27 M00
N 28 (NEXT STEP STARTS PROGRAM)
N 29 M6 T0303
N 30 T00
N 31 S9
N 32 F100
N 33 G0
N 34 (PITCH OF HOLES IN Y V0P = 9.5)
N 35 V0P=9.5
N 36 (SET UP SELECTED SEQUENCES)
N 37 BSRP35
N 38 (-=-)
N 39 TSTV30
N 40 BEQP31
N 41 M00
N 42 (INSERT CENTRE DRILL -- TOOL 3)
N 43 G54
N 44 V0X=0 V0Y=-141.12
N 45 X=V0X Y=V0Y
N 46 G0 Z0
N 47 M3
N 48 (DEPTH OF DRILLING MOTION IS 3MM)
N 49 V0D=-3
N 50 BSRP41
N 51 BSRP51
N 52 BSRP61
N 53 M5
N 54 G0 Z200
N 55 X0 Y0
N 56 (-=-)
N 57 $31
N 58 TSTV31
N 59 BEQP32
N 60 M00
N 61 (INSERT 6.8MM DRILL -- TOOL 3)
N 62 (------)
N 63 S9
N 64 G55
N 65 V0X=120 V0Y=0
N 66 X=V0X Y=V0Y
N 67 G0 Z0
N 68 M3
N 69 (DEPTH OF DRILLING MOTION IS 17.5)
N 70 V0D=-17.5
N 71 BSRP50
N 72 M5
N 73 G0 Z200
N 74 X0 Y0
N 75 (-=-)
N 76 $32
N 77 TSTV32
N 78 BEQP33
N 79 M00
N 80 (INSERT 12MM DRILL -- TOOL 3)
N 81 (------)
N 82 S7
N 83 G57
N 84 V0X=95 V0Y=0
N 85 X=V0X Y=V0Y
N 86 G0 Z0
N 87 M3
N 88 (DEPTH OF DRILLING MOTION IS 197)
N 89 V0D=-19
N 90 BSRP40
N 91 M5
N 92 G0 Z200
N 93 X0 Y0
N 94 (-=-)
N 95 $33
N 96 TSTV33
N 97 BEQP34
N 98 M00
N 99 (INSERT 8MM DRILL -- TOOL 3)
N 100 (------)
N 101 S9
N 102 G56
N 103 V0X=0 V0Y=-141.12
N 104 X=V0X Y=V0Y
N 105 G0 Z0
N 106 M3
N 107 (DEPTH OF DRILLING MOTION IS 18.5)
N 108 V0D=-18.5
N 109 BSRP60
N 110 M5
N 111 G0 Z200
N 112 X0 Y0
N 113 (-=-)
N 114 $34
N 115 TSTV34
N 116 BEQP49
N 117 M00
N 118 (INSERT DEBURRING DRILL -- TOOL 3)
N 119 (------)
N 120 S9
N 121 G58
N 122 V0X=0 V0Y=-141.12
N 123 X=V0X Y=V0Y
N 124 G0 Z0
N 125 M3
N 126 (DEPTH OF DRILLING MOTION IS 3)
N 127 G1 F60
N 128 (SET V0D FOR DEPTH OF EACH TYPE)
N 129 V0D=VDA
N 130 BSRP41
N 131 V0D=VDB
N 132 BSRP51
N 133 V0D=VDC
N 134 BSRP61
N 135 M5
N 136 G0 Z200
N 137 X0 Y0
N 138 (-=-)
N 139 $49
N 140 M2
N 141 (============= END ===============)
N 142 ( SUB ROUTINES )
N 143 (--------------)
N 144 $40
N 145 (12 MM DRILL TOOL 3 - S7 - === 3 HOLES)
N 146 G1 F40
N 147 $41
N 148 V0Q=1 V0X=95 V0Y=0
N 149 BSRP77
N 150 V0Q=1 V0X=-47.5 V0Y=82.27
N 151 BSRP77
N 152 V0Q=1 V0X=-47.5 V0Y=-82.27
N 153 BSRP77
N 154 G99
N 155 (---------------)
N 156 $50
N 157 (6.8 MM DRILL - S9 - === 3 HOLES)
N 158 G1 F35
N 159 $51
N 160 V0Q=1 V0X=120 V0Y=0
N 161 BSRP77
N 162 V0Q=1 V0X=-60 V0Y=103.9
N 163 BSRP77
N 164 V0Q=1 V0X=-60 V0Y=-103.9
N 165 BSRP77
N 166 G99
N 167 (---------------)
N 168 $60
N 169 (8.0 MM DRILL - S9 - === 558 HOLES)
N 170 G1 F35
N 171 $61
N 172 (NEXT TWO LINES ARE FUDGE FOR SHORTCUT)
N 173 TSTV33
N 174 BNEP59
N 175 V0Q=7 V0X=0 V0Y=-141.12
N 176 BSRP77
N 177 V0Q=7 V0X=-8.23 V0Y=-145.87
N 178 BSRP77
N 179 V0Q=7 V0X=-16.45 V0Y=-141.12
N 180 BSRP77
N 181 V0Q=7 V0X=-24.68 V0Y=-145.87
N 182 BSRP77
N 183 V0Q=7 V0X=-32.91 V0Y=-141.12
N 184 BSRP77
N 185 V0Q=5 V0X=-41.14 V0Y=-136.37
N 186 BSRP77
N 187 V0Q=3 V0X=-49.36 V0Y=-131.62
N 188 BSRP77
N 189 V0Q=2 V0X=-57.59 V0Y=-136.37
N 190 BSRP77
N 191 V0Q=1 V0X=-56.0 V0Y=-71.25
N 192 BSRP77
N 193 V0Q=4 V0X=-64.23 V0Y=-85.5
N 194 BSRP77
N 195 V0Q=7 V0X=-72.46 V0Y=-99.75
N 196 BSRP77
N 197 V0Q=10 V0X=-80.68 V0Y=-114
N 198 BSRP77
N 199 V0Q=26 V0X=-88.91 V0Y=-118.25
N 200 BSRP77
N 201 V0Q=23 V0X=-97.14 V0Y=-104.5
N 202 BSRP77
N 203 V0Q=22 V0X=-105.36 V0Y=-99.75
N 204 BSRP77
N 205 V0Q=21 V0X=-113.59 V0Y=-95
N 206 BSRP77
N 207 V0Q=18 V0X=-121.82 V0Y=-80.75
N 208 BSRP77
N 209 V0Q=15 V0X=-130.05 V0Y=-66.5
N 210 BSRP77
N 211 V0Q=12 V0X=-138.27 V0Y=-52.25
N 212 BSRP77
N 213 V0Q=5 V0X=-146.5 V0Y=-19
N 214 BSRP77
N 215 V0Q=10 V0X=-80.68 V0Y=28.5
N 216 BSRP77
N 217 V0Q=7 V0X=-72.46 V0Y=42.75
N 218 BSRP77
N 219 V0Q=4 V0X=-64.23 V0Y=57
N 220 BSRP77
N 221 V0Q=1 V0X=-56.0 V0Y=71.25
N 222 BSRP77
N 223 V0Q=2 V0X=-57.59 V0Y=126.87
N 224 BSRP77
N 225 V0Q=3 V0X=-49.36 V0Y=112.62
N 226 BSRP77
N 227 V0Q=5 V0X=-41.14 V0Y=98.37
N 228 BSRP77
N 229 V0Q=7 V0X=-32.91 V0Y=84.12
N 230 BSRP77
N 231 V0Q=7 V0X=-24.68 V0Y=88.87
N 232 BSRP77
N 233 V0Q=7 V0X=-16.45 V0Y=84.12
N 234 BSRP77
N 235 V0Q=7 V0X=-8.23 V0Y=88.87
N 236 BSRP77
N 237 V0Q=7 V0X=0 V0Y=84.12
N 238 BSRP77
N 239 V0Q=7 V0X=8.23 V0Y=88.87
N 240 BSRP77
N 241 V0Q=7 V0X=16.45 V0Y=84.12
N 242 BSRP77
N 243 V0Q=7 V0X=24.68 V0Y=88.87
N 244 BSRP77
N 245 V0Q=7 V0X=32.91 V0Y=84.12
N 246 BSRP77
N 247 V0Q=7 V0X=41.14 V0Y=79.37
N 248 BSRP77
N 249 V0Q=7 V0X=49.36 V0Y=74.62
N 250 BSRP77
N 251 V0Q=8 V0X=57.59 V0Y=69.87
N 252 BSRP77
N 253 V0Q=9 V0X=65.82 V0Y=55.62
N 254 BSRP77
N 255 V0Q=10 V0X=74.05 V0Y=41.37
N 256 BSRP77
N 257 V0Q=11 V0X=82.27 V0Y=27.12
N 258 BSRP77
N 259 V0Q=12 V0X=90.5 V0Y=12.87
N 260 BSRP77
N 261 V0Q=10 V0X=98.73 V0Y=17.62
N 262 BSRP77
N 263 V0Q=10 V0X=106.95 V0Y=12.87
N 264 BSRP77
N 265 V0Q=9 V0X=115.18 V0Y=17.62
N 266 BSRP77
N 267 V0Q=8 V0X=123.41 V0Y=12.87
N 268 BSRP77
N 269 V0Q=6 V0X=131.64 V0Y=17.62
N 270 BSRP77
N 271 V0Q=5 V0X=139.86 V0Y=12.87
N 272 BSRP77
N 273 V0Q=1 V0X=148.09 V0Y=17.62
N 274 BSRP77
N 275 V0Q=1 V0X=148.09 V0Y=-17.62
N 276 BSRP77
N 277 V0Q=5 V0X=139.86 V0Y=-50.87
N 278 BSRP77
N 279 V0Q=6 V0X=131.64 V0Y=-65.12
N 280 BSRP77
N 281 V0Q=8 V0X=123.41 V0Y=-79.37
N 282 BSRP77
N 283 V0Q=9 V0X=115.18 V0Y=-93.62
N 284 BSRP77
N 285 V0Q=10 V0X=106.95 V0Y=-98.37
N 286 BSRP77
N 287 (NEXT TWO LINES ARE FUDGE FOR SHORTCUT)
N 288 $59
N 289 V33=0
N 290 V0Q=10 V0X=98.73 V0Y=-103.12
N 291 BSRP77
N 292 V0Q=12 V0X=90.5 V0Y=-117.37
N 293 BSRP77
N 294 V0Q=11 V0X=82.27 V0Y=-122.12
N 295 BSRP77
N 296 V0Q=10 V0X=74.05 V0Y=-126.87
N 297 BSRP77
N 298 V0Q=9 V0X=65.82 V0Y=-131.62
N 299 BSRP77
N 300 V0Q=8 V0X=57.59 V0Y=-136.37
N 301 BSRP77
N 302 V0Q=7 V0X=49.36 V0Y=-131.62
N 303 BSRP77
N 304 V0Q=7 V0X=41.14 V0Y=-136.37
N 305 BSRP77
N 306 V0Q=7 V0X=32.91 V0Y=-141.12
N 307 BSRP77
N 308 V0Q=7 V0X=24.68 V0Y=-145.87
N 309 BSRP77
N 310 V0Q=7 V0X=16.45 V0Y=-141.12
N 311 BSRP77
N 312 V0Q=7 V0X=8.23 V0Y=-145.87
N 313 BSRP77
N 314 G99
N 315 (---------- $77 -------- HOLE DRILLING ROUTINE)
N 316 ( DRILLS V0Q HOLES AT V0X V0Y - DEPTH = V0D)
N 317 $77
N 318 V8=V0Q
N 319 BRAP9
N 320 ()
N 321 (-- LOOP BACK TO HERE --)
N 322 $8
N 323 V0Y=V0Y+V0P
N 324 (-- $9 -- START HOLE HERE --)
N 325 $9
N 326 G0
N 327 X=V0X Y=V0Y
N 328 BSRP88
N 329 (DRILL THE HOLE)
N 330 G1
N 331 Z=V0D
N 332 G0 Z0
N 333 $78
N 334 DECV8
N 335 BGTP8
N 336 G99
N 337 (------------------)
N 338 $88
N 339 ()
N 340 ()
N 341 ()
N 342 ()
N 343 G23 P79
N 344 BSRP80
N 345 $79
N 346 G99
N 347 (------------------)
N 348 $80
N 349 M5
N 350 G0 Z200
N 351 M00
N 352 M3
N 353 G0 Z1
N 354 $81
N 355 G99
N 356 (----------------------)
N 357 $35
N 358 V30=1 V31=1 V32=1 V33=1 V34=1
N 359 M00
N 360 (SWITCH OFF TO SKIP CENTRE DRILLING)
N 361 ()
N 362 ()
N 363 ()
N 364 ()
N 365 G23 P36
N 366 V30=0
N 367 (-----)
N 368 $36
N 369 M00
N 370 (SWITCH OFF TO SKIP 6.8MM DRILLING)
N 371 ()
N 372 ()
N 373 ()
N 374 ()
N 375 G23 P37
N 376 V31=0
N 377 (-----)
N 378 $37
N 379 M00
N 380 (SWITCH OFF TO SKIP 12MM DRILLING)
N 381 ()
N 382 ()
N 383 ()
N 384 ()
N 385 G23 P38
N 386 V32=0
N 387 (-----)
N 388 $38
N 389 M00
N 390 (SWITCH OFF TO SKIP 8MM DRILLING)
N 391 ()
N 392 ()
N 393 ()
N 394 ()
N 395 G23 P39
N 396 V33=0
N 397 (-----)
N 398 $39
N 399 M00
N 400 (SWITCH OFF TO SKIP DEBURRING)
N 401 ()
N 402 ()
N 403 ()
N 404 ()
N 405 G23 P44
N 406 V34=0
N 407 (-----)
N 408 $44
N 409 M00
N 410 (TURN SWITCH ON)
N 411 M00
N 412 (USE RAPID TO SKIP HOLES)
N 413 G99
Super X3. 3600rpm. Sheridan 6"x24" Lathe + more. Three ways to fix things: The right way, the other way, and maybe your way, which is possibly a faster wrong way.