Maslow Home Maslow Community Garden

List of sources of error


When looking at the firmware calculations, here are those Geometry parameters that seem to matter, and wether thay are missing.

Spoiler: Chain Stretch and Top beam flex corrections seem very important and missing.

Parameter Description Impact on XY coordinates Present in firmware?
motor spacing distance between the center of the gear box shafts 0.5:1 on horizontal, 2:1 on vertical Yes
motors y offset Vertical distance from the gear box shaft (motor) to the top of the workspace nil on horizontal, constant 1:1 on vertical Yes
rotation radius ‘extra’ distance to add to the actual chain length to reach the bit 1:1 proportional on horizontal, 2.5:1variation on vertical Yes
chain sag flexible chain/line will sag under it’s own weight in a catenary curve lower corners get up to 4mm horizontal, 0.6mm vertical error Not registering the real sled and chain weigth. But the parabola approximation is more efficient. although it needs calibration. The firmware CoordinatedMovement() migh need to be rewriten to improve accuracy by breaking long moves into small ones. ( sag correction warps space!)
chain tolerance gap between chain links to allow them to move creates asymetrical horizontal displacement errors. 0.13% error yields up to 4mm horizontal error in the oposite corner, and 4mm vertical error along the workspace top Yes
chain stretch elongation due to chain tension (rubber band effect) 1mm horizontal near the workspace top. 4 mm vertical near the workspace top center. NO but is simple to implement. It would require a chain tension estimation. See the MaslowCNCModelOnOctave
sprocket “12 o’clock” error Is calibrated using Ground Control The error shows up to 1:1 on the horizontal oposite side, and creates a vertical error amplified on the workspace center top. Yes by careful calibration
Chordal error the amount of chain fed out for a given amount of rotation is not a constant as the effective radius of the sprocket changest Neglectable No
top beam flex (front/rear) potential for the top beam to flex forward slightly, changing the effective motor spacing TBD No
top beam flex (up/down) The weight of the sled moves from side to side, changing the downward force on the ends of the beam 0.5:1 Proportional to sled horizontal position, and parabola on vertical up to 1:1 NO would need a parameter and a simple calculation. See the MaslowCNCModelOnOctave
top beam tilt (compared to workpiece) if the top beam is tilted compared to the workpiece, coordinates are wrong TBD No, but seemd small based on a thread dicussion where a pull request did not conclude
top beam tilt (compared to gravity) if the top beam is tilted compared to gravity, tensions on the chains will not be what’s expected, which will throw off the position TBD No, but using a level to install the frame at a level position could be a critical step on frames like the 10 feet top beam for a 4x8 workspace.
triangulation kit flex If the triangulation kit doesn’t keep the end of the chain the exact same distance from the bit, (due to flexing under tension, shifting of joints, or other reasons) this will affect the effective chain length TBD could not yet be measured out of the other uncontrolled parameters No
sled rotation if the sled rotates to the point that the triangulation kit hits a limit, the line of the chain effectivly bends TBD if occurs in normal operation No
triangulation kit sag the triangulation kit is heavier than the same effective length of chain TBD if significant No
encoder error the encoder measures rotation of the sprocket using discrete steps. Movement less than a step size cannot be measured. However this error does not accumulate Neglectable No
backlash If tension on the gearbox moves from being on the sled side to being on the back side, the chain position gets an offset equivalent to the gears play. Neglectable if design prevents reverse of balance No
weight of cords/vacuum hose depending on where the sled is, there is a different amount of weight added to the sled by the cords/vacuum hosts Would create chain stretch and Sag correction change but sag correction is usefull in lower corners only No, but once stretch and sag will be tuned, we might want to see if this item becomes significant.


From what I’ve done, the only thing missing is compensation for top-beam deflection.

I am trying to think about the best way of setting up some compensation such that we don’t have to set up a tape-measure and attempt to measure ~1 mm deflection for every machine that is built.

Would it be feasible to create a 3D model of some common machine configurations: default frame; default frame with unistrut; default frame with 2x6 header; etc. Use FEA to calculate deflection parameters for each machine configuration. These deflection parameters would then be placed into a data table as a configuration option in GC.

Just an idea. Any thoughts?

  • There is a lot of variation in the characteristics of wood regionally and even more globally. Metal strut has variations between manufacturers as well.
  • None of those would be needed if the frame was built rigid enough to not deflect. That’s not too much to ask of a user.
  • Firmware with too many variables is very much harder to configure and to support.


@blurfl, thanks for the input.

I agree with this.

I don’t agree with this. If the default frame flexes by 2 mm (in any direction), it would take twice the material to bring the deflection to 1 mm, 4x the material to achieve 0.5 mm deflection, and 8x the material to achieve 0.25 mm deflection. I am imagining a frame with 8 2x4’s stacked to make the top-beam; it seems like a lot. Via hardware, it is easy to achieve a small improvement, but difficult to achieve an order-of-magnitude improvement. I have seen videos of high-precision machines where the machine is absolutely massive; I know they are designed that way because of this effect, trying to achieve a minimum level of deflection.

I agree with this.

We need to balance fidelity against difficulty in configuration management.

  • With a few extra calculations in the firmware, and considering flexibility characteristics of only one frame (the default frame), we would probably improve accuracy for 98% of users. The only case when accuracy would be worse is for extremely rigid frames that are >2x more rigid than the default frame.


Why would one use a thicker beam instead of installing bracing targeted to resist the deflections? The original Madlow frame was elegantly designed to provide bracing, but when the top beam became popular bracing wasn’t considered.


Good thought. It is very likely that the current design could be improved through more elegant methods than just adding material.


Yes, and no. The top beam became popular in part because it provided bracing against the forces that are working to pull the motors toward each other. Unfortunately, the community didn’t immediately recognize that the top beam traded one unbraced direction for another.