# Classifying method of control of 3D printers?

Is there a classification of method of control most (FDM) 3D printers fall under?

From a 1986robotics textbookref I was reading they defined three classes of control:

1) Pick and place

2) Point to point

3) Continuous path

However, both point to point and continuous path control are stated as requiring servo motors.

I know that the majority of 3D printers are actuated with stepper motors as opposed to servo. Does the continuous path classification still apply? Or is there another classification?

• What does the text book call the Uni robot? or a CNC milling machine? Nov 13 '19 at 4:11
• What is the "definition" of continuous path? Nov 13 '19 at 10:08
• I think the big distinction to be aware of is: most FDM's (G-code users) run on relative positioning. Once they start going, there is no mechanism to catch positional drift. Compared with code that does a "return to zero" after each move -- the endstop switches used in 3Dprinters are too inaccurate to do this. And compare with systems that use shaft encoders or other feedback to set every move to an absolute position. Nov 13 '19 at 15:49
• @CarlWitthoft I concur on the drift part of your comment, but stating that endstop switches are inaccurate is not true. They are accurate enough, the problem is that they are used only once, after that, missing steps cause the drift. If you'd use the switches more often, it would not be a problem. E.g. if Prusa trinamic drivers detect missing steps, the carriage is "homed" and layer deposition continues.
– 0scar
Nov 13 '19 at 21:11
• @0scar The typical spring-loaded lever-on-button switches will vary by tens of microns in my experience (in advanced machining labs, not in 3D printers). That means that doing return-to-zero after every operation is likely to cause more trouble than it might solve (i.e. fixing missed stepper motor moves). That's all I meant. Nov 14 '19 at 13:24

The question is if robots classification terminology the textbook sketches applies to 3D printing?

Servos (closed loop) are used in robots to guarantee position (you don't want to accumulate an error after repetitive movement), most 3D printers use open loop steppers that are instructed on a point to point basis through G-code instructions, implying that the use of servos is not a "requirement" for point to point control.

It is a requirement if you want to be absolutely sure that the position is reached. In 3D printing where the loads are generally low, this requirement is frequently dropped. But, there are printers that use servo control.

Note that many CNC machines (operating at much higher loads than a 3D printer) even don't use servo's but (open loop) steppers, these are generally larger and more powerful (more torque).

Upon further research these defined classes of control (from a robotics perspective) only apply to servo motors.

At the highest level the methods of control being categorised as:

• Servo
• Non-Servo

The three categories I listed in my question are all subsets of the Servo category and rely upon feedback from the servo.

3D Printers fall under additive manufacturing and then can be classified by the material first. Usually, the material dictates entirely what the design looks like and it would be foolish to not differentiate what you look at by this first. For some materials, there are a couple of subtypes that tell us about which method for fusing the material is used, but usually, there is just one.

• light curing resin
• projected light
• Laser
• Paste, gel or air curing resin
• direct deposit from syringe
• Foil
• Laser1
• Powder
• Laser
• Filament (FFF/FDM)
• direct deposit

Of all these printers, only the FDM/FFF Group has a large diversity in how they are designed on the outer side, with the main 4 designs (and one example) being

• Cantilever (TronXY X1)
• Core-XY (Hypercube)
• Portal (Prusa)
• Delta (Kossel)

Now comes the kicker: Most FDM/FFF Printers do use only stepper motors and use G-Code that is derived from CNC - just like the whole idea of FDM was invented as reverse CNC. Only very few use an encoder at all. Marlin, the main firmware used in 3D printers, executes usually point-to-point instructions (G0 X10 Y10 Z0 E5), but some implementations are able to perform arcs (G2 E7.85 R5 X-5 Y5). Usually, printers run in relative coordinates (to the last position of the nozzle/tool), but for some operations absolute coordinates (mainly start or end codes) are used.

Among the printers that use servos instead of steppers are, to my knowledge, mostly laser-based systems.

• Resin may also be directly deposited, with or without photoinitiation. Not to mention clays and biologicals.
– Davo
Nov 13 '19 at 21:01
• @Davo ah, right, forgot paste/gel and air curing resins. Nov 13 '19 at 21:27