Delta Calibration and Rotary Deltas
October 24, 2016 04:57AM
Hi,

I've been wondering for a while about auto calibration and leveling on deltas. Would it be possible to calibrate/auto level a delta using only a bed sensor or does it NEED endstops at the top of the rails?

On a side note, is there any publicly available firmware for rotary deltas like the gus or printers similar to the ones in the videos below.
[www.youtube.com]
[www.youtube.com]

Are there any pages on the reprap wiki with projects similar to these? I've looked around but perhaps I'm not using the right name for them or something.

Thanks
Re: Delta Calibration and Rotary Deltas
October 24, 2016 05:55AM
Quote
Trakyan
I've been wondering for a while about auto calibration and leveling on deltas. Would it be possible to calibrate/auto level a delta using only a bed sensor or does it NEED endstops at the top of the rails?

The position of carriages on towers is not known when the MCU boots. You need the top endstops to establish the precise positions of carriages on towers after the MCU boot. The z-probe is used for calibration only.

You can derive precise endstop positions from z-probe measurements therefore you can get rid of the top endstops. But you would need to "calibrate" before each print. This is slower than just homing to the top endstops. It also requires a permanently mounted z-probe. An ideal z-probe measures z-height exactly below the hotend tip. The biggest XY-offset of the z-probe the bigger the measurement error. This may lead to problems when computing the precise carriage positions (especially when the starting hotend position is far from bed center). Although one probably can compensate for XY z-probe offset. You can easily achieve zero XY z-probe offset with a removable z-probe. Otherwise you need an FSR style z-probe.
Re: Delta Calibration and Rotary Deltas
October 24, 2016 10:33AM
Quote
Trakyan
I've been wondering for a while about auto calibration and leveling on deltas. Would it be possible to calibrate/auto level a delta using only a bed sensor or does it NEED endstops at the top of the rails?

Yes you can build a delta without endstop switches. I have tried it using RepRapFirmware and an IR Z probe. This is how:

1. Change the homedelta.g file to something like this:

M913 X50 Y50 Z50      ; reduce motor current to 50%
G1 S2 X300 Y300 Z300  ; move all carriages up 300mm so that they hit the stops
G1 S2 X-5 Y-5 Z-5     ; move them all down 5mm
G92 X0 Y0 Z200        ; this point is close to 200mm above bed centre
M913 X100 Y100 Z100   ; restore motor current

The carriages will then be within 4 full steps of the homed position. If you have 100 steps/mm @ x16 microstepping, this is a position error of up to 0.64mm.

2. Set up the bed.g file to run one 3-factor calibration cycle using just 3 probe points to get the endstop corrections about right. Then run one 6-factor calibration cycle to get accurate calibration. This takes about 40 seconds.

3. Don't home the printer again before you print, or the endstop calibration will be lost.

Having the IR probe offset a little from the nozzle makes the calibration sensitive to variable effector tilt, but otherwise doesn't matter provided the bed is flat.

However, even at reduced motor current, the carriages were quite noisy bumping against the stops. Maybe using stops made out of a soft material would make them quieter.

Edited 2 time(s). Last edit at 10/24/2016 10:35AM 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: Delta Calibration and Rotary Deltas
October 24, 2016 12:57PM
Interesting idea with reduced motor current. I was thinking about not doing any kind of homing at all. User would just position hotend approximately to the middle of the bed (± few cm should not matter). The firmware would assume the carriages are homed (with a few cm error). Calibrate the endstop positions. Print.

Maybe it could be practical with a 32bit controller board and some good z-probe. But it still cannot be quick since one cannot go to quickly against bed when probing and also it would need to move up quite a bit (at least about the same amount as expected initial endstop error) between each two probing points.
But mechanical endstops are enough too and they are dirt cheap so there is not much reason to bother leaving endstops out.
Re: Delta Calibration and Rotary Deltas
October 24, 2016 02:50PM
Quote
hercek
Interesting idea with reduced motor current. I was thinking about not doing any kind of homing at all. User would just position hotend approximately to the middle of the bed (± few cm should not matter). The firmware would assume the carriages are homed (with a few cm error). Calibrate the endstop positions. Print.

Maybe it could be practical with a 32bit controller board and some good z-probe. But it still cannot be quick since one cannot go to quickly against bed when probing and also it would need to move up quite a bit (at least about the same amount as expected initial endstop error) between each two probing points.
But mechanical endstops are enough too and they are dirt cheap so there is not much reason to bother leaving endstops out.

As I said, the calibration takes about 40 sec using RRF. Homing takes maybe 15 sec. The maximum error is less than 1mm after homing so no need for a large dive height. But as you say, microswitches are cheap, so the main saving is the convenience of reduced wiring.

I guess I could improve it by using the stall detection in the TMC2660 drivers on the Duet WiFi to detect hitting the mechanical stops.



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: Delta Calibration and Rotary Deltas
October 24, 2016 07:43PM
Right your version is quicker when you force carriages against the top of the towers. I meant that a version which would not even force the carriage up would be probably slow. The initial carriage position errors would be in the range of few cm.
Re: Delta Calibration and Rotary Deltas
October 25, 2016 08:15AM
Thanks for all the info guys, I'm working on a dirt cheap repstrap for educational purposes, to the point where I'd like to see if I can cheap out even on microswitches and the extra wiring. Deltas are simple to construct (especially in terms of their z axis movement) but I've heard calibration can be difficult or tedious.

Other than that can anyone point me in the direction of some GUS simpson/rotary delta(?) style projects? Or at least the firmware/kinematics they use. I don't really have any firmware experience but would love to learn. I wouldn't mind coding the firmware myself if I got some pointers on where and how to start.
Re: Delta Calibration and Rotary Deltas
October 25, 2016 12:29PM
Nicholas Seward (author of GUS Simpson) posted quite a bit in this forum in past. You can try to find his posts and PM him.
GUS Simposon did not have a special firmware the last time I heard about it. It used a preprocessor which transformed Cartesian gcode to a gcode for GUS Simpson. The GUS Simpson itself run a Cartesian like firmware.
I do not know anything about other delta type machines.

The math used to calibrate a linear delta printer is explained here: [github.com]
You can also look at DC's reprap firmware which implements the calibration directly in the firmware. It should be possible to use a similar approach for rotary deltas too. Although it may not be possible to simplify it that nicely as in the case of linear deltas.
Re: Delta Calibration and Rotary Deltas
October 31, 2016 05:05PM
Thank you!
Sorry, only registered users may post in this forum.

Click here to login