CAM strategies and parameters

What each strategy does, what its parameters mean, and how the twin sets the cutting data. The numbers the twin gives are estimates from its physical models.

The parameters below are the ones a feature takes in a job (the program_generate tool's features). Lengths are in millimetres, angles in degrees.

Clearing a pocket: rings, zigzag and adaptive

A pocket's area is its shape less its islands, offset inwards by the tool's radius. It is cleared layer by layer, each layer no deeper than the depth of cut (ap). The strategy (strategy) sets the path in a layer:

StrategyPathUse it for
rings (default)Offsets of the area from its deepest spot out to the wall, each ae apartMost pockets
zigzagStraight passes to and fro at angle, ae apartOpen, shallow areas
adaptiveA path that keeps the tool's engagement near ae everywhereDeep pockets, harder materials

A pocket with a fit finishes its walls at size in a pass of its own. See Fits.

Adaptive clearing cuts with a small radial engagement at a deeper ap. Its links move clear of the material, and it falls back to rings where the area is too narrow for it.

A finishing pass wraps the tool much further around a wall's inner corner than along a straight wall. Where it wraps more than 1.2 times as far, that part of the wall is cut in steps first (corner_steps, on by default; off when the feature gives its own finish_ap, unless it also gives corner_steps: true; corner_steps: false turns it off).

Rest machining

With rest: true, a pocket clears only what the tools before it left standing: the corners and narrow parts a larger tool could not reach. Studio works out what is left from the earlier pockets in the same program, or from the twin's workpiece when it has one.

Contours and tabs

A contour (side: outside, inside or on) follows an outline a layer at a time, climb milling. outside and inside offset the outline by the tool's radius; on follows it as it is.

Tabs (tabs: count, width and height) leave short bridges at the bottom, so that a part cut out stays in place. A tab is 1 mm high unless you give its height; where the cut is 1 mm deep or less, it is half the depth high.

Slots: layers and trochoidal

A slot (x0, y0, x1, y1, width) is cut with the strategy:

How a tool goes into the material: helix, ramp, plunge

An end mill does not plunge into solid material. Each layer starts with:

The answer says, for each operation, how it went in first.

Holes

Drilling cycles

Holes at points, depth deep, are drilled with the controller's cycles. A hole deeper than three times the drill's diameter is pecked, 1.5 times the diameter a peck, unless peck gives another. The cycle's retract plane is 1 mm over the top.

Boring by helical interpolation

A hole of diameter d larger than the end mill is cut round a helix, then finished at size at the bottom. The hole can be at most twice the tool's diameter; larger holes are pocketed (shape: circle).

Reaming

A reamer (reamer 6 H7) of the hole's fit enters at its feed and leaves at the same feed, with no rapid out of the hole. The hole must be drilled before it in the same job, 0.05–0.6 mm smaller, or marked predrilled. The reamer's speed is a quarter of the end mill's cutting speed for the material, its feed per revolution 2.5 times the drill's.

Thread milling, tapered pipe threads too

A thread mill goes down the bore, then cuts the thread from the bottom up round a helix of one pitch a turn: right hand counter-clockwise (climb milling), left hand clockwise. The thread is named (thread: M8, M8x1, 1/4-20 UNC, G1/4) or given by d and pitch. Tapered pipe threads (1/4 NPT, Rc1/4) are cut round their cone, each turn in 48 arcs.

Ring grooves in a bore

groove cuts a ring groove into a bore's wall (for a circlip or an O-ring, or a light trap) with a T-slot cutter: a disc on a thinner neck. The cutter goes down the bore's centre to the groove, moves out to 0.1 mm from the wall and goes round a full turn (climb milling) for each step into the wall, then comes back to the centre and up. The job gives the groove's diameter d, the bore's diameter bore, the groove's lower edge depth and its height width (by default the disc's thickness; a higher groove is cut in passes from the bottom up). It is refused when the tool in the spindle is not a T-slot cutter, when the disc does not go down the bore with 0.2 mm to spare, when the groove is deeper than the disc reaches past its neck, and when the groove is not larger than the bore.

Chamfers, engraving and V-carving

To engrave on a curved surface, give surface: the name of a mesh from geometry_import. Each stroke is sampled every 0.2 mm, the tool is set onto the mesh and goes depth below where it touches; on a slope a V-bit touches on the uphill side first, so nowhere is cut deeper than depth. A stroke beyond the mesh is refused.

Perlage, the watchmakers' pattern of overlapping spots, is perlage: an end mill as wide as a spot goes down to depth (0.2 mm at most) at each point of a grid inside an outline, waits dwell seconds (0.2 by default) and lifts 0.3 mm above the face to go to the next. The rows are staggered by half the pitch (by default 0.65 of the tool's diameter), each spot covering part of the one before. margin keeps the spots' centres that far inside the outline.

3D roughing and finishing

A mesh is roughed in levels (rough3d), each level cleared adaptively. It is then finished (finish3d) with:

StrategyPath
parallelPasses in one direction across the part
waterlineLevel contours, for steep walls
steep_shallow (default)Waterline on the steep areas, parallel on the shallow ones
pencilAlong the inner corners, after the others

rest_from finishes only what an earlier tool left.

Rest roughing: with rest_from (the larger end mill or bull-nose that roughed before, by its specification or its tool number), rough3d cuts only what that tool left, such as the gaps between ribs it could not reach; rest_allowance is the allowance it left (by default this pass's own).

Cutting data from the twin

Studio starts from the material's data for the tool's kind: the cutting speed range and the feed per tooth. Values you give in cutting (rpm, feed, ap, ae, finish_ap) are kept as you give them. The other values are set with the twin's models.

Stability and chatter

The twin's chatter model computes the stability lobes for the tool in its holder: the depth of cut that stays stable at each spindle speed. The lobes lie only where the model of the tool and the machine puts them, so Studio does not aim at a lobe's peak: for each speed it takes the least stable depth within 10 % of it, chooses a speed within 0.7 to 1.8 times the one the material gives, and cuts at most 80 % of that depth.

Power, force and the tool's deflection

The closed loop: trying the program in the twin

With verification on, Studio runs the program on a fresh twin. When the run shows chatter, a load too high or a tool deflecting too much, Studio changes the program and tries again:

Each version tried is saved. A long program is tried behind the call, and its report comes later (run_status). The answer says what changed and why.

Several setups and nesting

Limits

How large a job can be

Past these limits Studio does not write the program. It says why, and what to change.

WhatLimit
Setups in a job8
Nesting16 kinds of part, 200 copies of each
A mesh (STL, 3MF, OBJ, glTF)5 million triangles; the file up to 1 GB
An SVG, DXF or text file64 MB; a DXF drawing up to 2 million segments
Adaptive clearingThe walk's grid holds about 1.5 million cells. A pocket the size of the MC-1's travel clears with a 3 mm end mill; with a 1 mm one, use rings or zigzag, or a larger stepover.

A job can have up to 32000 features; holes alike go as one feature with their points. The operation list, the reasons and the closed loop's repairs cover the first 64 features; a later feature that chatters is reported, not repaired. The setup sheet lists the first 64 operations and says so.

The program check and the setup sheet read up to 2 million moves. An arc counts as its short chords: about 50 for a full circle of 3 mm radius, about 220 for one of 50 mm. Past that, they say where they stopped. The setup sheet still gives the whole program's time, but not the operations' times or the tools' heights after that line. The trial run in the twin checks the whole program.

How long Studio takes to write a program, measured on two cores of a desktop PC (the trial run in the twin comes after):

JobTimeMemory
20 pockets with islands on a 180 x 130 mm plateunder 1 s18 MB
A pocket the size of the travel, adaptive, 6 mm end mill12 s47 MB
The same with a 3 mm end mill37 s70 MB
1000 characters engraved12 s25 MB
200 washers nested on a plate5 s30 MB
3D roughing of a relief the size of the travel (half a million triangles), 6 mm end mill8 min240 MB
The same relief from 3 million triangles20 min1 GB
3D parallel finishing of it, 2 mm ball end mill, 0.01 mm scallop (half a million triangles)4 min270 MB
The same from 3 million triangles18 min1 GB

For 3D work: