Direct Motion

For AI agents: the Markdown edition of this page is index.md; the site index for agents is llms.txt.

Motion control in any .NET language.

Direct Motion makes the servo amplifiers, the IO boards and the .NET library that run a machine from one Windows PC. Machine tools, automation cells, robots, test rigs: anything with motors. The machine software is an ordinary .NET program, in C#, VB.NET, F# or whichever .NET language you already use. You write it, or your AI assistant does.

.NET + Direct Motion = any motion-control application, running

Direct Motion servo amplifiers mounted on a plate beside three AC servo motors of different sizes
DM amplifiers on their plate, and three of the AC servo motors they drive. One board per motor, one serial link each to the PC.
20 kHzservo loop, in a kernel driver on a CPU core of its own
1 programyour .NET application: motion, IO, UI and logic in one place
30 to 300 Aamplifier range, one board per motor, axis or spindle
1,180 motorsin the one-touch setup catalog, tuned without typing a value
Since 2005running production machine tools in the field
// The whole stack from your side: open the control, add an axis, start, move.
var control = DMControl.GetNewControl("MyMachine");
var x = control.GetDMAxis("X");
control.MainMotion.AddSerialLink(x);
control.PostAddedDevices();                 // the 20 kHz loop starts here
control.MainMotion.LockAllAxis();
control.StopHard = false;

x.RemovePower = false;                      // power the motor
x.JogToLocationAndWaitForDecel(10.0 * x.MultiplyFactor, feed: 200);   // to 10.0, at 200 units/min
Console.WriteLine($"X is at {x.ActualAxisPosition}");

Why builders choose it

One program, not three

No PLC to program, no drive to configure with a vendor tool, no HMI runtime. Your .NET program is the machine: motion, IO, screens, logging, networking. One debugger, one source tree, one set of tests.

The hard real time is done

The servo loop runs at 20,000 cycles a second inside DM's kernel driver. Your code calls a library and never has to be real-time itself. A look-ahead planner feeds the driver.

AI assistants already speak .NET

Claude, Copilot and the rest have read more C# and .NET than any human ever will. They have read almost no ladder logic. This site gives them the rest: the API, the specs and the rules, in a form they can use.

Motors set themselves up

Pick the motor from a catalog of 1,180, or type its nameplate. One-touch setup finds the commutation, measures what the catalog does not know, and tunes the loop. Field-oriented control is standard.

You can see what happened

Every axis keeps a 20 kHz record of position, following error, phase currents, bus voltage and faults. When something goes wrong, you, your AI or DM can read exactly what the machine did.

Direct access to the people who wrote it

DM is a small company. The engineers who built the hardware and the library answer the questions. The library is maintained and extended for new customers' machines.

What people build with it

Machine tools

Mills, lathes, routers and special machines, 3 to 5 axes, spindles to the 300 A drive. DM's control has run production machine tools since 2005. More →

Factory automation

Conveyors, indexing tables, pick-and-place, cut-to-length, press-fit, packaging. Speed control, moves, sensors and outputs in one program. More →

Robots

Cartesian and gantry robots are ordinary coordinated axes. For arms, your code supplies the kinematics and the planner applies them every 50 µs. More →

Test rigs and stages

Motor test stands, endurance rigs, positioning stages. Every test leaves a 20 kHz trace. More →

What it is not

A DM system needs a Windows PC. It is not a PLC, it does not speak EtherCAT to other makers' drives, and it has no safety rating of its own. The motors must be 3-phase AC servo or induction motors with an encoder DM can read. If any of that rules you out, we would rather you knew now. The fit, in detail →

Built so that an AI can do the work

Every page here has a longer edition written for AI agents, in plain Markdown, with the API, the numbers and the rules an AI needs to check whether DM fits your machine and to draft the software. If you use an AI assistant, try: "Read directmotion.com/llms.txt and tell me whether Direct Motion could run my machine." How this works →

4C: CAD, CAM, CNC and CMM in one program, with an AI at the keyboard

4C is DM's design-to-cutting program: design the part, plan the toolpaths, run the machine and measure the result with a touch probe, in one window. An AI assistant connects to it over MCP and builds real, editable features in the design tree, then plans the toolpaths and simulates the cut. About 4C →

Isometric render from 4C of an AC servo motor with a transparent housing showing the windings
An AC servo motor designed by an AI assistant in 4C, 82 bodies.
Render from 4C of a grey plate with pockets, a slot and holes, with toolpaths drawn on it
A plate modeled and given six toolpaths by an AI through 4C's MCP server.