This documentation is no longer maintained. For documentation of the current version of emc2, please see
A listing of terms and what they mean. Some terms have a general meaning and several additional meanings for users, installers, and developers.

Acme Screw
A type of lead-screw [*] that uses an acme thread form. Acme threads have somewhat lower friction and wear than simple triangular threads, but ball-screws [*] are lower yet. Most manual machine tools use acme lead-screws.
One of the computer control movable parts of the machine. For a typical vertical mill, the table is the X axis, the saddle is the Y axis, and the quill or knee is the Z axis. Additional linear axes parallel to X, Y, and Z are called U, V, and W respectively. Angular axes like rotary tables are referred to as A, B, and C.
The amount of "play" or lost motion that occurs when direction is reversed in a lead screw [*]. or other mechanical motion driving system. It can result from nuts that are loose on leadscrews, slippage in belts, cable slack, "wind-up" in rotary couplings, and other places where the mechanical system is not "tight". Backlash will result in inaccurate motion, or in the case of motion caused by external forces (think cutting tool pulling on the work piece) the result can be broken cutting tools. This can happen because of the sudden increase in chip load on the cutter as the work piece is pulled across the backlash distance by the cutting tool.
Backlash Compensation
- Any technique that attempts to reduce the effect of backlash without actually removing it from the mechanical system. This is typically done in software in the controller. This can correct the final resting place of the part in motion but fails to solve problems related to direction changes while in motion (think circular interpolation) and motion that is caused when external forces (think cutting tool pulling on the work piece) are the source of the motion.
Ball Screw
A type of lead-screw that uses small hardened steel balls between the nut [*] and screw to reduce friction. Ball-screws have very low friction and backlash [*], but are usually quite expensive.
Ball Nut
A special nut designed for use with a ball-screw. It contains an internal passage to re-circulate the balls from one end of the screw to the other.
Computer Numerical Control. The general term used to refer to computer control of machinery. Instead of a human operator turning cranks to move a cutting tool, CNC uses a computer and motors to move the tool, based on a part program [*].
Coordinate Measuring Machine
A Coordinate Measuring Machine is used to make many accurate measurements on parts. These machines can be used to create CAD data for parts where no drawings can be found, when a hand-made prototype needs to be digitized for moldmaking, or to check the accuracy of machined or molded parts.
A Digital Read Out is a device attached to the slides of a machine tool or other device which has parts that move in a precise manner to indicate the current location of the tool with respect to some reference position. Nearly all DRO's use linear quadrature encoders to pick up position information from the machine.
EDM is a method of removing metal in hard or difficult to machine or tough metals, or where rotating tools would not be able to produce the desired shape in a cost-effective manner. An excellent example is rectangular punch dies, where sharp internal corners are desired. Milling operations can not give sharp internal corners with finite diameter tools. A wire EDM machine can make internal corners with a radius only slightly larger than the wire's radius. A 'sinker' EDM cam make corners with a radius only slightly larger than the radius on the corner of the convex EDM electrode.
The Enhanced Machine Controller. Initially a NIST [*] project. EMC is able to run a wide range of motion devices.
The module within EMC[*] that handles general purpose I/O, unrelated to the actual motion of the axes.
The module within EMC [*] that handles the actual motion of the cutting tool. It runs as a real-time program and directly controls the motors.
A device to measure position. Usually a machanical-optical device, which outputs a quadrature signal. The signal can be counted by special hardware, or directly by the parport with emc2.
Relatively slow, controlled motion of the tool used when making a cut.
The speed at which a motion occurs. In manual mode, jog speed can be set from the graphical interface. In auto or mdi mode feedrate is commanded using a (f) word. F10 would mean ten units per minute.
Feedrate Override
A manual, operator controlled change in the rate at which the tool moves while cutting. Often used to allow the operator to adjust for tools that are a little dull, or anything else that requires the feed rate to be ``tweaked''.
The generic term used to refer to the most common part programming language. There are several dialects of G-code, EMC uses RS274/NGC [*].
Graphical User Interface.

A type of interface that allows communications between a computer and human (in most cases) via the manipulation of icons and other elements (widgets) on a computer screen.
An application that presents a graphical screen to the machine operator allowing manipulation of machine and the corresponding controlling program.
A specific location in the machine's work envelope that is used to make sure the computer and the actual machine both agree on the tool position.
ini file
A text file that contains most of the information that configures EMC [*] for a particular machine
These specify the angles between the individual joints of the machine. Kinematics
Manually moving an axis of a machine. Jogging either moves the axis a fixed amount for each key-press, or moves the axis at a constant speed as long as you hold down the key.
The position relationship between world coordinates [*] and joint coordinates [*] of a machine. There are two types of kinematics. Forward kinematics is used to calculate world coordinates from joint coordinates. Inverse kinematics is used for exactly opposite purpose.Note that kinematics does not take into account, the forces, moments etc. on the machine. It is for positioning only.
An screw that is rotated by a motor to move a table or other part of a machine. Lead-screws are usually either ball-screws [*] or acme screws [*], although conventional triangular threaded screws may be used where accuracy and long life are not as important as low cost.
Manual Data Input. This is a mode of operation where the controller executes single lines of G-code [*] as they are typed by the operator.
National Institute of Standards and Technology. An agency of the Department of Commerce in the United States.
Part Program
A description of a part, in a language that the controller can understand. For EMC, that language is RS-274/NGC, commonly known as G-code [*].
Fast, possibly less precise motion of the tool, commonly used to move between cuts. If the tool meets the material during a rapid, it is probably a bad thing!
Software that is intended to meet very strict timing deadlines. Under Linux, in order to meet these requirements it is necessary to install RTAI [*] or RTLINUX [*] and build the software to run in those special environments. For this reason real-time software runs in kernel-space.
Real Time Application Interface, see rtai/ rtai/, one of two real-time extensions for Linux that EMC can use to achieve real-time [*] performance.
See, one of two real-time extensions for Linux that EMC can use to achieve real-time [*] performance.
The formal name for the language used by EMC [*] part programs [*].
Servo Motor
Servo Loop
On a mill or drill, the spindle holds the cutting tool. On a lathe, the spindle holds the workpiece.
Stepper Motor
A type of motor that turns in fixed steps. By counting steps, it is possible to determine how far the motor has turned. If the load exceeds the torque capability of the motor, it will skip one or more steps, causing position errors.
The module within EMC [*] that coordinates the overall execution and interprets the part program.
A scripting language and graphical widget toolkit with which EMC's most popular GUI's [*] were written.
World Coordinates
This is the absolute frame of reference. It gives coordinates in terms of a fixed reference frame that is attached to some point (generally the base) of the machine tool.