Welcome! Log In Create A New Profile

Advanced

Axis compensation - tips from a newby

Posted by Flyskyhy 
Axis compensation - tips from a newby
February 14, 2014 09:18AM
I purchased and assembled my RepRap Ormerod just a week ago. The assembly process went relatively smooth (except for some minor frustrations - inserting the X drive belt, anybody?).
But I had quite a hard time calibrating the system (called “Axis compensation” in the docs). I would like to share my experiences, so that others may learn from my mistakes and solutions. My solutions deviate from the documentation, so this can be used as input to improve it.

Extruder Height

Make sure the extruder is at the right height. The extruder must be lower than anything else on the print head (obviously), especially the IR sensor. In my first build, IR sensor was lower than the extruder, which I did not discover until adjusting the bed.

To set the extruder to the correct height, follow the following steps when assembling the Hot End.
  1. Screw the filament tube into the cooling block as hard as you can (don’t back it off half a turn as described in the documentation).
  2. Now screw in the assembled heater block while holding the filament tube. Screw it in until it does not go any further.
  3. Use the conical brass nut to line up the heater block with the cooling block. Turn it clockwise while holding the threaded brass union of the filament tube with pliers; it will take the heater block with it.
Even when installed in this way, the extruder still sits only a fraction of a millimetre below the IR sensor. When in doubt, take a wood file and file off a millimetre from the bottom of the IR sensor circuit board and its plastic mount.
The reasons for this design are beyond me, the sensor could have easily been installed a couple of millimetres higher and the machine would still function properly. When I have a little more experience in 3D design and printing, I will try to redesign the mounting block.

Position of IR sensor (Z probe)

The position of the IR sensor is quite fidgety. I could not attach its connector without loosening it, for example. Also, the bolts don’t fit tightly into the holes, leaving some room to move the sensor around. It is very important that it is installed perfectly vertical. When it is not vertical, all kinds of strange things will start to happen. For one, the X-homing won’t work reliably anymore.

Lowering the extruder onto the bed

You frequently will have to lower the extruder as much as possible, without touching the bed. The documentation states “until you can just see light between the nozzle and the bed”. Because the bed is glass, there is always plenty of light passing beneath, making this a very cumbersome method. I used the following method instead:
  1. Cut a strip of approx. 2.5 x 10 cm (1 x 4 in) from ordinary printer paper.
  2. Put this on the bed with one end under the extruder, and your finger on the other end. Make sure you only lightly touch the paper, do not press down on the bed.
  3. Now lower the extruder in steps of 0.1mm until you start to feel resistance when moving the strip of paper back and forth. You will also start to feel some of the fan vibration in your finger.

Working without web interface

I never got the web interface to work, and I also resent having to run an ethernet cable through my whole home just to be able to use the printer, so I did the calibration using just the USB interface and Pronterface. The documentation states that this is possible to do, but never explains how. To add to the confusion, the MacOS Pronterface application I downloaded from the RepRapPro website, did not have the promised RepRapPro specific buttons.
Luckily, everything described in the document can be done with the standard Pronterface, you just need to know the commands to type into the lower right command line (with the “Send” button besides it). Here are the most important ones:
  • Define current Z position as zero (similar for X and Y): G92 Z0
  • Move X to home position - and define that as zero (similar for Y): G28 X0
  • Report the current position: M114
  • Move the head to a specific position: G1 X<pos> Y<pos> Z<pos>
  • Shutdown motors: M84
  • Read the IR sensor value: G31
  • Define the IR sensor value corresponding to a specific Z position: G31 Z<pos> P<value>

Different home position for setting the Z probe (calibrating the IR sensor)

The documentation uses the pre-programmed X=55, Y=0 position for the Z homing. The IR sensor is then supposed to be over the aluminium (or paper) tag in the corner of the bed. It goes on to state that you should use a different X,Y position if the pre-programmed one is not over the centre of the tag. That was the case for me, and I used a different position, which worked fine. The documentation also states that you must update the “homez.g” file on the SD-card with the new X,Y position.
I did that as well, and then went on to my first test print. It nearly buried the extruder in the glass bed.

It turns out that you also need to update the X,Y position in the “homeall.g” file, which is used for the home all command (G28) used in the test print gcode. In the “homeall.g” file, you see two lines:
G1 X55 F2000
…
G1 Y0
Replace the 55 and 0 with the X and Y values of your Z home position.

Bed Plane Compensation

There are a couple of things to keep in mind when levelling the bed:
  1. for lowering the extruder to the bed, use the method with the paper strip described above
  2. choose the first position well. The first position has the same Y coordinate as the last position. I my case, the position in the documentation (Y=20) caused the cooling housing to be over the clamp that holds the glass plate in place. This prevented the extruder from reaching the bed in the last position. So choose a position that does not have that problem (X=50, Y=30 as start position worked well for me).
  3. The documentation says that after setting the first point, you should “Send a G92 Z0 command to set this point as Z=0”. Don’t do that; it will invalidate the Z=0 setting that you did when setting the Z Probe. Simply note down the Z value, and use it in the G30 P0 command, just like you do for the other points.

Setting the Z probe

Finally, I assumed that I only needed to set the Z probe once, and it would be correct for all subsequent prints. So, the day after my first print, I did my second print, just loading the setbed.g to start, and then the gcode of the print. The extruder almost dug a dungeon into the glass bed.
Make sure you follow “setting the Z probe” procedure before every print, right after loading the setbed.g. To make that easier, I use the following simplified procedure:
  1. from the first time you set the z probe, remember at what approximate Z height the IR value is around 700
  2. home the X and Y and Z, which will lower the extruder head over your preferred X, Y position over the paper square. It may lower the head onto the bed: don’t worry about it.
  3. use the method with the paper strip described above to raise or lower the extruder until it is just above the bed.
  4. Issue the G92 Z0 command to define this as zero.
  5. raise the head to the remembered height: G1 Z<height>
  6. issue a G31 command to get the IR value
  7. issue a G31 Z<height> P<IR value> command to define the Z height for that IR value

Edited 1 time(s). Last edit at 02/14/2014 09:34AM by Flyskyhy.
Re: Axis compensation - tips from a newby
February 14, 2014 01:34PM
Hi FlySky, take a look around my thread....
Building Tips
Its abit late to help you but for mounting the X axis belt motor I used dental Floss....smoking smiley

Edited 1 time(s). Last edit at 02/14/2014 01:34PM by KimBrown.
Re: Axis compensation - tips from a newby
February 14, 2014 07:19PM
Hi,

Nice collection of tips. Turning the

The forum is expanding fast all the time, and since there is no static/pinned entries, it is getting almost impossible to keep up with all the little gems and mods flying around. In [forums.reprap.org] you can find a mounting block that gives the nozzle just a little bit more clearance, and it is simple enough to print without too much calibration..

The web interface is no easy to get going in the original firmware, but after the magical number of reset-and-retry attempts, once you get to the control page, it keeps working until next time in my experience. The important trick: You can leave the page open in Chrome while powering down the Ormerod. Once the printer is back online, the web interface won't know it was away. But you will notice a thread about a much improved web interface that keeps bouncing to first page of the forum -- once I figure out how to reattach my USB connector (torn off by accident when moving the printer) that will be the first thing I try.

/Allan
Re: Axis compensation - tips from a newby
February 22, 2014 08:01AM
Hi,
Nice tips. Thank you.
Yes the hot-end sits only a fraction of a millimetre below the IR sensor.
Instead of filling the IR PCB you can add 2 washer to lower the hot-end when attaching it to the x-carriage.
Sorry, only registered users may post in this forum.

Click here to login