Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delta: Allow setting printable radius to a value different from "delta_radius" #379

Closed
ruevs opened this issue Jun 7, 2018 · 5 comments
Closed

Comments

@ruevs
Copy link
Contributor

@ruevs ruevs commented Jun 7, 2018

Hi first of all - great job on this firmware! Clean architecture, nice documentation, worked from the first attempt! On a delta the steppers move noticeably smoother than with Repetier and much, much smoother than with Marlin.

After configuring a delta printer (#378) I noticed that the delta_radius option, which sets the geometry of the printer, is the only "radius" that can be configured.

In delta.py in the check_move function there is rather sensible code that checks whether the end position of the move is in the printable area:

self.max_xy2 = min(radius, min_arm_length - radius,
                   ratio_to_dist(4. * SLOW_RATIO) - radius)**2

Where radius = delta_radius
This code presumes that the configured geometry is the only thing limiting the printable radius. However this is not always the case. For example for the Anycubic Kossel that I configured delta_radius: 99.8 but the actual printable radius is only 90mm. In my opinion there should be a printable_radius configuration option that should be included in the above min statement.

@hg42

This comment has been minimized.

Copy link

@hg42 hg42 commented Jun 7, 2018

Note, deltas can also print outside the tower radius!
Some have a square bed.
Some have a hexagonal or octagonal bed.
And there might be even more possibilities.
To be clear, I had such a printer with a big square bed.

delta-geometry

@KevinOConnor

This comment has been minimized.

Copy link
Owner

@KevinOConnor KevinOConnor commented Jun 7, 2018

@KevinOConnor

This comment has been minimized.

Copy link
Owner

@KevinOConnor KevinOConnor commented Jun 7, 2018

@hg42

This comment has been minimized.

Copy link

@hg42 hg42 commented Jun 7, 2018

I haven't seen an indication this is a problem in practice

if my delta would still run, it would suffer from the limit I think. It had a big square bed (300x300) and two corners were outside the tower radius.

I think specifying a print_radius would be enough.

Its a general problem, most checks of this kind are simplistic and for many cases too simplistic.
In general it would need a 3D model and it also depends on the toolhead (which can be changed and often is asymmetric).
E.g. my delta had some restrictions above 300 mm (I attached an extruder there).

Nobody wants to check a complex model all the time.
It's more a task for the slicer or host software, because the print model could be intersected with the restriction model.

So, simply switching off the restriction for such special geometries and only for such big objects is the easiest way to go.

delta-square-bed

@KevinOConnor

This comment has been minimized.

Copy link
Owner

@KevinOConnor KevinOConnor commented Jun 30, 2018

It doesn't appear anyone is actively working on this, so I'm going to close this for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.