Rostock Calibration
November 05, 2015 11:40AM
Hi All,

I've been reading these forums for a while now and i have recently built a rostock delta printer.
I've had a few prints from the machine and I now want to improve the accuracy of the dimensions of the prints etc.

I'll cut to the chase, after setting the nozzle height and leveling the towers so that it grabs a sheet of paper at each point, I'm noticing that the head is tracking in a concave manner.
e.g. as the head moves from the centre to the towers the head lifts a little and back down as it arrives, and i can feel it lifting off the paper as it moves.

There is no command in the movement for it to lift so i'm assuming that i have one of the delta settings incorrectly set, but i'm unsure which one.

can anyone point me in the right direction as this is starting to drive me crazy?

This is the original Rostock using marlin as the firmware.

TIA
Steve
Re: Rostock Calibration
November 05, 2015 01:37PM
If you need to make the nozzle higher above the bed around the extreme edges, raise the "delta radius" value (it may be called different things depending on your hardware). You may want to try raising it in 0.1 or 0.5 increments. If you need to lower the nozzle when it's at the extreme edge, simply lower that number.
Re: Rostock Calibration
November 05, 2015 03:27PM
Move the nozzle so that it just grabs the paper at the towers. Then measure the nozzle height at the centre of the bed. Increase the delta radius setting in the firmware by 2.2 times that height. Then measure again (caution: the nozzle height at the centre may now be slightly negative!) and repeat until the error is less than 0.05mm.

Edited 2 time(s). Last edit at 11/05/2015 03:28PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Rostock Calibration
November 05, 2015 04:00PM
That's the point. The head appears to be at the same height at the towers as the center using the paper as a height gauge. But half way in the transit between the centre and any of the towers it lifts enough so it's not grabbing the paper until it approaches the tower it's like it is hopping from the center not running parallel.
Re: Rostock Calibration
November 05, 2015 04:44PM
Ah, so the problem occurs half way in transit between the towers and the centre.

Check whether the excess height is about the same when halfway to each of the 3 towers. If yes, then you have a systematic error. Possible reasons include:

1. Your configured diagonal rod length in the firmware is a very long way off. It should be equal to the length between bearing centres of each of the rods. Measure it and check.

2. Your bearing spacing for each pair of rods is not the same at the carriages as it is at the effector. Measure them to check.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Rostock Calibration
November 05, 2015 07:45PM
Tumbledown, if this only happens while transiting then it's due to the Marlin firmware, and nothing to worry about.

The reason is due to the geometry of a delta printer, and the firmware not calculating every point in space between two points. In some cases when transiting, the firmware just calculates the final point, and drives all the motors at a certain speed to get there. This means that the head can move in an arc to get to the final place.


If, however, you move the head to midway between two towers (and stop it), and it's higher than it should be, then you have a calibration error and you need to redo your steps per unit value, as well as measure your diagonal rods again.
Re: Rostock Calibration
November 06, 2015 01:41AM
Quote
nebbian
Tumbledown, if this only happens while transiting then it's due to the Marlin firmware, and nothing to worry about.

The reason is due to the geometry of a delta printer, and the firmware not calculating every point in space between two points. In some cases when transiting, the firmware just calculates the final point, and drives all the motors at a certain speed to get there. This means that the head can move in an arc to get to the final place.

I would think you are wrong here, the printer does not differentiate between a travel move or a printing move.

If you command it to travel travel to a certain point in the same plane it should not "hop" there.


I'd go with what dc42 is saying.
Re: Rostock Calibration
November 06, 2015 03:05AM
I'm just going by what I noticed when doing the bed calibration -- the version of marlin that I used definitely did not interpolate a path when moving between points. This resulted in a curved toolpath. There are two different ways of moving the head, one that interpolates the path, another that just moves all motors at a fixed speed to the endpoint. The bed calibration routine was using the simpler non-interpolated method, which meant that my probe would drag on the bed in the middle of a move. I updated my copy of Marlin to use the other function, that interpolates, and now I don't get the probe dragging on the bed.

Just FYI.
Re: Rostock Calibration
November 06, 2015 03:20AM
G0 typically commands an uncoordinated move, which will make every carriage move immediately to the desired end position, causing the direct path you mention.
Re: Rostock Calibration
November 06, 2015 04:21AM
Quote
n8bot
G0 typically commands an uncoordinated move, which will make every carriage move immediately to the desired end position, causing the direct path you mention.

Ahh!

Was wondering about difference between g0 and g1 earlier, but dismissed it at the time, using g1 for all moves worked just fine....

Learned something new today as well!

Thank you.
Re: Rostock Calibration
November 06, 2015 05:03AM
In RepRapFirmware, G0 and G1 use exactly the same code. Some firmwares (e,g, Smoothierware) remember different feed rates for G0 and G1. It doesn't make sense to make G0 take a direct path, because on a delta this would often result in the head crashing into the bed. The direct path in motor coordinates is generally (always I think) lower in the middle than the direct path in space, not higher.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Rostock Calibration
November 07, 2015 02:37PM
OK , it would seem there is definitely something a miss in the firmware.
the diagonal rods are 250mm centre to centre and in the firmware i have had to bump this to 262 to get a 100mm square to print with the correct dimensions.

I decided to try printing on a raft for be adhesion and i was able to print a set of arm halfs OK when printed at the centre
here's a link to the printed arm on the jig i made for the set on the printer currently - Rostock Arm

I then tried to print a set of 5 and noticed that the raft on the first arm located on the far right of the bed was compressed on the X axis (e.g. it was too narrow).

So, for most of the figures in the marlin delta firmware i have left as the default with the exception of the #define DEFAULT_DELTA_DIAGONAL_ROD and #define DELTA_SMOOTH_ROD_OFFSET so it would seem that i will need to measure the critical variables to get this printing correctly across the entire bed.

So what are the critical variable and how do i measure them?
i'm assuming these are: -
#define DELTA_EFFECTOR_OFFSET (current value 24)
#define DELTA_CARRIAGE_OFFSET 24 (current value 24)

i have set #define BED_DIAMETER to the diameter of the heated bed (200mm), is this correct?

TIA
Steve
Re: Rostock Calibration
November 07, 2015 06:27PM
Tumbledown, don't play with the diagonal rod length to adjust scaling. Measure it as accurately as possible, then plug that value into the config. And don't touch it again!
Then change smooth rod offset until you get a flat print surface.

Once these steps are done, don't touch those values again. If you are having dimensional issues then you have other problems (steps per mm, twisted towers, tilted effector, wrong extrusion rate, inaccurate size of filament etc). Changing your diagonal rod value just masks the problem and introduces others.
Re: Rostock Calibration
November 08, 2015 01:52PM
+1 for nebbian

Tumbledown:
If you are good at math then use this: [github.com]
You can still use it without a probe. Use a paper method to set head position above the bed and then read the tower offsets with M114. It is tedious and less precise than using a probe but better than nothing.

If you are not good at math then just read the comments. They may still help you.

Measure your diagonal rods as precisely as possible. Measure them in a jig with calipers. Put the value in the config and do not touch it ever again. Optimize only tower positions and the endstop offsets.
Re: Rostock Calibration
November 10, 2015 08:17AM
Hi guys,
thanks for the tips.

I'm out of town with work for the next few days, but I will try to get this done before the weekend and post back.

I've done some work and I think the only thing I need to fix now is the dimensions of the prints.
I've adjusted the steps per mm so that when I move 100 mm in the z axis it measures out at 100.

when I print out a single layer 100 mm square it measures 104mm in both the x and y directions.
I think I need to have a look at the 2 offsets and make sure they match the measurements. Sounds to me that I might be 2mm off on the radius

steve
Sorry, only registered users may post in this forum.

Click here to login