A 3D printer needs to be homed (homing) before the print starts.
- What is homing?
- What is the purpose of homing?
- Is it necessary?
3D Printing Stack Exchange is a question and answer site for 3D printing enthusiasts. It only takes a minute to sign up.
Sign up to join this community
- What is homing?
From the tag wiki homing we can read:
The process of determining the location of a 3D printer nozzle in three dimension using a reference point (home location) is referred to as "homing". Homing should occur before every print and involves bringing the X, Y and Z-Axis motors to pre-defined limit locations (usually these are endstops). Pre-recorded homing data offset values determine the position of the build plate origin with respect to the endstop locations.
- What is the purpose of homing?
So, homing is defining the printer coordinate system location with respect to a reference location we call "home". Why? The controller board or steppers have no memory for storing their position and could have been manually moved. Once the axes have "seen" there reference location, the printer will remember to refer all movements in respect to this point (this may include offset values to get to the origin of the printer (see How to center my prints on the build platform? (Re-calibrate homing offset)). Note, if a problem occurs where e.g. the nozzle hits the bed or print object, the nozzle may be out of sync with the reference point. Such an anomaly is e.g. layer shifting which occurs on open-loop stepper movement (servo steppers have feedback to prevent this from happening, but these are more expensive). The purpose of homing is to set a reference so that your sliced objects can be printed at the correct location within the printer print volume. If correctly configured, and no problems like layer shifting occur, the benefit is that proper homing prevent the machine to print within the limits of the printer.
- Is it necessary?
Strictly speaking, no, it is not necessary. But if you do not automatically set a reference for each axis, you would need to manually provide a position to start from. This can work just as well, but the use of end stops automate the procedure so that it is very easy for the printer operator. Some (of the cheaper) CNC machines do not have end stops, the operator needs to be aware to position the tool head of the CNC machine at the proper starting position.
Most 3d printers control head position using stepper motors and end stops with no position feedback. The stepper motor does not actually know its location.
The printer's control system can only know the location of the head by keeping track of the relative number of steps the head has been moved by the stepper motors.
Homing moves all the axes in one direction until it hits the end stops for each axis. Once that has been done, then the control system knows exactly where the head is and future relative motions can be offset from there.
Some control systems will move the axis at a relatively high speed (so you don't get bored, but not fast enough to cause damage) and then overshoot the end stop's activation point and stop. Then they will back off to release the end stop and then move towards it more slowly to get a more exact reading of the activation point.
When the printer is idle, frequently the stepper motors are unpowered to save energy and keep the motors cool. When the motors are unpowered, they can free spin (you can push the axis with your hand or the vertical axis might even slip a bit with gravity), so the position would be uncertain, and it would be necessary to re-home. Once it has rehomed, the control system will keep the motors powered to prevent slipping.
It is only necessary to home if you care about where the printer starts printing. In theory, you could get away with only homing the vertical axis (so the print starts on a surface and the first layer is the correct thickness), and manually set the horizontal start position. However, this might make using the full horizontal limits of the build area difficult if you didn't start it in the right place.