-
Notifications
You must be signed in to change notification settings - Fork 70
Accuracy Issues
A frequent point of discussion is what the accuracy that the maslow can be expected to produce is, and why it's not cutting things accurately.
To understand this, you need to understand the mechanics of the machine and what sort of calculations are being done.
Currently we have two kind of kinematics available, the differences are in the sled design.
In this design, the sled is logically a T with the chains attached to the top corners, the bit somewhere in the middle of the vertical stroke, and the center of gravity of the sled at the bottom of the T. If the chains are the same length, the sled is vertical. But if the chains are different lengths, the sled tilts, and the amount of tilt depends on the distance between where the chains bend, and how far down to the center of gravity, since the router bit is somewhere in the middle of this now sloping line, you need to know how far down the bit is to figure how far it's moved.
As a result, to accurately calculate the location of the bit, the machine needs to know
- the spacing of the motors
- the size of the sprockets on the motors (because as the chains move to steeper angles, they wrap around more of the sprocket before hanging straight)
- the amount of chain between the sprockets and the sled
- the distance between the chain mounts to the sled
- the distance from the top of the T to the center of the bit
- the distance from the top of the T to the center of gravity at the bottom (we actually ask for the difference between the bit and the CG, but if you know one you can calculate the other)
The math required is so complex that we have not found a way to do a simple calculation, instead we have to make a guess, calculate from xy to chain lengths, and from chain lengths to xy, look at how far off we are, adjust out guess and try again. The system will do this up to 5000 times before giving up and throwing a "needs calibration" error.
We can measure the distance between the motors with good accuracy (~0.1mm), by counting the teeth on the sprocket we can get a good value for the sprocket diameter. And by knowing how much we have rotated the sprockets, we can get a good value for the chain length (except for the chain mount problems mentioned above)
The calibration step has you try to cut a square and then it changes the value of #4 until the result is a square in the center of the work area. Unless the only error is in this value, the calibration step is introducing error to this value to cancel out errors caused by other value. These can be made to cancel out in one place, but since the different sources of error create different distortions to the movement, they won't cancel out elsewhere.
If all these measurements are accurate, then you have an accurate machine. We don't have good measurements of how accurate because we haven't had anyone report building a machine accurately enough. Even when Bar built his second machine, he was not able to duplicate the accuracy of his first machine.
One of the discussion points from the early days of the kickstarter was if there was a way to simplify the math. If the sled didn't tip, it would greatly simplify the calculations, in the forum thread Throwing my hat in the sled modification ring (currently 700+ posts long) Bar showed the approach that people had been talking about and introduced a new idea based on a ring around the sled. This keeps the chains pointing directly at the bit and turns the math into a simple triangle (well, almost, you still have the wrap around the sprockets to consider).
Getting good, cheap bearings has proven impossible. Bar's ring approach is a lot better (see it here and here) And the linkage arms (sometimes incorrectly referred to as a "pantograph") that were identified as an approach partway through the discussion look like a very solid way to go. (original linkage concept can be seen here, refinement can be seen here, and here)
There are now two kits available to implement triangular kinematics:
- Laser cut 45˚ linkages (mounts evenly around the router)
- Laser cut top-mount linkages (mounts above the router)
- Bar is looking into trying a laser cut ring approach.
This simplifies the measurements needed for accuracy down to:
- the spacing of the motors
- the size of the sprockets on the motors (because as the chains move to steeper angles, they wrap around more of the sprocket before hanging straight)
- the amount of chain between the sprockets and the sled
- the distance effectively added to the chain by the mounting hardware
In this forum topic we are discussing how #4 can be calculated, and it looks like we can quickly and easily calculate the added length of the chain. We can do this to an accuracy of 2x-4x the accuracy that someone can read a tape measure. Since that is ~0.5mm, this should give us very good accuracy on the machine dimensions, resulting in very accurate calculations.
The sections above are designed to highlight the difference between the two kinematics settings, but they are not the only sources of error.
With traditional kinematics, if the router is not mounted in the center line of the sled, it throws all the calculations off, as the tilt now has a different effect on the bit position.
With triangular kinematics, if the router is not mounted exactly where the chains point, the cutting position is offset, and sled rotation will cause the router to move.
If the weights are not even, the chain mountings are not symmetrical, the hose or electrical cords from the sled hang wrong, etc you can have the sled tilt differently than what you expect.
With the traditional kinematics, this immediately translates into errors. With triangular kinematics this translates into errors only if the router is not centered, or if the chain mounts (links, wheels, etc) hit a limit and the chain pivots on the mount.
- what matters is where the chain can pivot, if it can't pivot on the mount, the point that matters is the first pivoting link in the chain, if the chain can pivot some in the mount, and some in the chain, we can't calculate what happens.
- some chain length may be eaten up by the mount, in the stock design, you put the chain through the hole in the mount and put in a cotter pin. The position of the chain is different depending on if the flat part of the pin is against the mount of if the round part is. This isn't much of a difference, but when we are looking at a desired accuracy of 0.4mm, it doesn't take much.
A chain hanging between two points is never completely straight, the more tension on the chain, the closer it is.
With the motors operating about a bit under half power, a stock maslow will have the chain connected directly between the motors sag by around 10mm in the center, but this only translates to the chain being 0.1mm longer than it should be.
But if you move the sled to the bottom corner of the work area, the long chain can sag by as much as 48mm, which translates into an error of around 1mm in position. adding 15 pounds to the sled can reduce this error by about half.
Chains are made of many links that can move against each other, to do this there is just a little bit of a gap between parts of the chain. As the chain wears, these tiny gaps increase. This means that the effective length of each link increases slightly. Maslow has no way of knowing this.
As the gears wear, they will add a little bit of error, but this should be a very small amount.
With the linkage approaches to triangular kinematics, there is some minor slop in the joints (more so as things wear), depending on the linkage design this can add error. In the top mounted linkage two of the (non-vertical) linkage members are under compression and two are under tension, any slop in the joints sums and puts the router bit below the point where the chains would cross. Some of this error can be overcome by moving the router up on the sled but calculating the slop can be difficult, also slop in a compression/tension configuration distorts the parallelogram that makes the linkages work so with this design some error could be introduced that can not be accounted for. In the 45˚ linkage the sled-mounted linkage members are all under tension, this means that any slop in the joints only adds to the distance from the tip of the chain to the router bit; this is easily cancelled out when calibrating.
With the ring/bearing approach to triangular kinematics, the forces causing rotation are very low, see this post for a good discussion of this issue.
Because the gears on the maslow are always loaded in one direction, any backlash in the gears doesn't matter, because they are never shifting from one loaded side to the other
Since we have encoders on the motor before the gearbox, we have extremely high numbers of encoder steps to detect motor position (8148 steps/rotation)
https://forums.maslowcnc.com/t/holey-triangular-calibration/6240/176
https://forums.maslowcnc.com/t/most-critical-measured-dimensions/4263/5
https://forums.maslowcnc.com/t/list-of-sources-of-error/7523/33
https://forums.maslowcnc.com/t/accurate-maslowcnc-manual-calibration-how-to/8458/2