Welcome! Log In Create A New Profile

Advanced

Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?

Posted by MRGiacalone2005 
Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 15, 2014 07:50PM
I am testing my steppers and electronics with Marlin using Repetier-Host. The steppers are right in front of me unhooked to any belt/line and I am triggering my end stops manually. The homing routine seems to be working well enough. According to the specs of our printer the Delta Radius should be 104mm. (#define DELTA_DIAGONAL_ROD 274.0 #define DELTA_SMOOTH_ROD_OFFSET 183.7 #define DELTA_EFFECTOR_OFFSET 45.5 #define DELTA_CARRIAGE_OFFSET 33.75 // mm).

If I tell Repetier that I have a delta radius of 130, I can move the print head to -130X (the printer is not set up, it is just that the steppers move to what it seems to be a proper move and Repetier registers this as being at -130X). From here if I move to -130Y (making it -130X, -130Y) the steppers get there with no problem, but if I move to 130Y (-130X, 130Y) one of the steppers just takes off running and keeps moving until I push the emergency stop.

I am trying to understand how the Repetier limits the movement of a Delta printer. I know that if I set software end stops on Marlin it does limit the moves but only if I put a +/-120 limit on them. If I set them to +/-150 same thing happens, one of the steppers takes off running after a certain point before +/-150.

I would like to know what information the Repetier is taking from the Firmware to mess this move. It seems that it is using my Delta Settings in Marlin, and there are a lot of things that one can deduce by trial an error here. But regardless of how it actually uses the info the problem would still be that; rather than stopping everything at a certain point where Repetier thinks the print head should not be going, it is allowing one of my axis to run wild.

Marcelo R G
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 20, 2014 02:41AM
The Host does not know anything about your firmware settings. It limits moves to a rectangular region which contains the circle. That is all. And these positions are not working on your delta in the edges. I guess I should modify that to a circular test for deltas in the next release.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 20, 2014 01:51PM
Thanks for clarifying that.

As long as we are talking about area shapes it might be more useful to get rid of circular area altogether. We are clear that a quadrilateral area allows for moves that are beyond the reach of the rods, but circular area limits the movements to a very small area compared to the actual maximum reach. If we consider the maximum reach of a Delta having very long arms this will result in a triangular area. As the rods get smaller the triangular shape is maintained but with rounded corners.


We are about to begin testing our Delta model to reach the extended eL, eR, and eF points during calibration. However this can only be achieved by moving the print head to those places with your hand, but not with manual numeric movements using Repetier-Host. We were trying to trick the host, telling it we have a very big circular area, but as I already said in such case one of our steppers starts to run like wild.
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 20, 2014 08:16PM
I've been doing some further testing on the manual control from Repetier-Host. These are the results:

19:07:04.762 : X:0.00Y:0.00Z:0.00E:0.00 Count X: 253.31Y:253.31Z:253.31
19:07:16.165 : X:0.00Y:104.45Z:0.00E:0.00 Count X: 205.79Y:205.79Z:274.00
19:07:41.341 : X:134.30Y:104.45Z:0.00E:0.00 Count X: 3.68Y:220.47Z:238.83
19:13:50.012 : X:134.40Y:104.45Z:0.00E:0.00 Count X: -958.72Y:220.47Z:238.83

It shows that whenever the coordinates send the nozzle to a point that cannot be reached by the delta arm (in this case 270mm). The carriage is sent to a negative value (lower location in the delta smooth rod) which could have catastrophic result considering that deltas do not have minimum end stops. I have also done this test with Pronterface with similar results. So I guess it should be the FW.


Thanks.
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 21, 2014 03:01AM
Yes, it is of course a firmware problem. For this reason repetier-firmware now limits moves to a cylinder shape you define safe. When a move is not possible it sends even the real coordinates to the host, so it still displays the right coordinates.
If you ask why clinder - well it must be fast and circular distance is easy to calculate and most delta beds are either square or circular anyway.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 21, 2014 11:59AM
You are right, a Circular shape is very fast compared to the triangular shape with rounded corners. But if it was a complete triangle (which is easier than that shape) together with the added limitation of only positive values for the Delta carriages, it would be an almost perfect maximum print area.

I also agree, 'most delta beds are either square or circular anyway', but it can be said that this is a consequence of neither the firmware nor the host allowing for such moves (not even in manual mode)

I created a feature request for a couple of Marlin distros (ErikZalm, RichCattell) just to get more insight on the possible solution.

Thanks,

Marcelo R G
Re: Repetier Printer Settings: Limited Delta Radius, Motor Runnig Wild?
May 22, 2014 10:38AM
Not sure if this helps, but maybe some of the tricks for 3D distance rendering can be used. At least it contains no divisions or roots, not sure how fast branches are.
[www.iquilezles.org]
//Triangular Prism - signed
float sdTriPrism( vec3 p, vec2 h )
{
    vec3 q = abs(p);
    return max(q.z-h.y,max(q.x*0.866025+p.y*0.5,-p.y)-h.x*0.5);
}

Or maybe blend some shapes into each other:
[www.iquilezles.org]
Sorry, only registered users may post in this forum.

Click here to login