FABRICATE NC — language reference

The ncl programming language: every command below is generated from the controller's own compile-checked registry, and every figure is lowered through the real language front-end.

Program & flow

units
Set the length unit for the program (mm or inch).
let
Bind a named, unit-checked value for reuse.
if
Run a block only when a condition holds.
repeat
Repeat a block up to a number of times.
break
Exit the innermost loop early.
continue
Skip to the next iteration.
abort
Stop the program with a message.
warn
Surface a non-fatal advisory.
define
Define a reusable, typed, defaulted operation — then call it by name.
incremental
Interpret coordinates inside the block as relative.

Motion

dwell
Pause for a fixed time.
g0
Move at maximum feed (non-cutting positioning).
g1
Cut in a straight line at the programmed feed.
g2
Cut a clockwise arc / helix to a point.
g3
Cut a counter-clockwise arc / helix to a point.
arc
An arc that leaves the previous move tangentially, to a point.
n
Program the CONTACT point; `n=(…)` offsets to the tool tip via the surface normal.

Interpolation

spline
Interpolate a smooth B-spline / NURBS curve through or along control points.
wrap
Wrap a flat developed toolpath onto a cylinder about a rotary axis.

Machining cycles

drill
Drill holes at points — simple, peck, or chip-break, with dwell.
tap
Rigid-tap a thread (synchronised feed/spindle).
bore
Bore a hole — straight or helical milled.

Compensation

comp
Offset the path by the tool radius — program the part edge, cut the right size.

Frames & planes

frame
Select a work coordinate system (G54…G59) or set the active datum.
translate
Translate the active coordinate frame.
scale
Uniformly or per-axis scale subsequent geometry.
mirror
Reflect subsequent geometry about an axis/plane.
plane
Tilt the machining plane (3+2 indexing) by normal or spatial angles.

Tooling

tool
Select a tool by number or name (applies its length/radius offsets).
prestage
Index the next tool to the change position while cutting.

Spindle

spindle
Start the spindle at an rpm (and direction), or set defaults; CSS via `spindle css`.
coolant
Turn coolant on (flood/mist) or off.
afc
Turn on-controller adaptive feed on/off, optionally setting the target cutting load.

Feed & dynamics

defaults
Set sticky defaults (feed, feed mode, blend, mode, spindle) for the whole program.
with
Apply settings to one block, then restore.
feed
How cutting feed is set and interpreted (per-min, per-rev, inverse-time).

Probing

probe
Take a touch-probe measurement (optionally into a variable).

Stock & fixtures

stock
Declare the blank for simulation / pre-flight.
fixture
Declare fixtures/clamps for collision checking.