Accuracy Issues and Calibration Overview

Draft: Distance Between Motors

Edit: So I’ve gone back and forth on this and I’m going to make the assumption that the simulator is asking for actual value minus measured value. So if Maslow measured 3000 mm for a distance and actual is 3005 mm, the error is +5 mm, not -5 mm. Someone please let me know if this is incorrect.

The Why

To know the length of chains to be fed out, the firmware has to know how far the motors are apart (one side of the triangle). The more accurate this is known, the more accurate the firmware will be in moving the router to where you want it to.

If the controller thinks the motors are further apart than they are, then it will feed out too much chain and will make the vertical distance of your cuts lower, wider, and actually shorter than it should (green line is ideal, red is what happens when controller’s motor spacing value is 50 mm too large):

#used a simulator error of -50.00mm#

If the controller thinks the motors are closer together than they are, it will feed out too little chain and will make the vertical distance of your cuts higher, narrower, and actually longer than it should (controller’s motor spacing value is 50 mm too small)

#used a simulator error of +50.00mm#

How Maslow Calculates Distance Between Motors

One of the calibration steps has the user applying the left chain on the left sprocket and then using the GroundControl software the feed out chain until enough is fed out to reach the right sprocket. The chain is then “pulled tight” and the software equates the amount of chain that was fed out to the distance between sprockets (it adjusts for the two extra links that are applied to the right sprocket, if you were wondering). This method in measuring is dependent upon a three primary factors:

  • The motor mounting points and top beam do not flex
  • The chain is fed out precisely at 2.5-inches (63.5 mm) per sprocket full rotation.
  • Precise knowledge of gear ratios of motors
  • Precision is setting the sprocket teeth to 12 o’clock during calibration

The original frame design wasn’t the best at keeping the mounting points from flexing. The new frame designs incorporate a rigid top beam that the motors are mounted to and this seems to do a good job. Also, if the mounts are not well secured to the top beam, they can rotate under stress and this will cause the distance between motors to change, thereby throwing off the calibration.

As for chain issues, the 10-tooth sprocket for #25 chain should spool out precisely 63.5 mm of chain for every rotation (10 teeth x 6.35 mm chain pitch). However, chain will wear over time, or get damaged, and after a rotation the length of the chain that is spooled out is actually longer than 63.5 mm… how much exactly depends upon the chain. Personally, I measured a difference of about a 10 mm between what I got from using a tape measure (which I assume is accurate) to what Maslow calculated… a 0.27% difference. May not seem like much but if you are trying to reach sub-mm accuracy in your cuts, it will have an effect.

Regarding gear ratios of motors, someone early on discovered that the assumed gear ratios were wrong and that led to distance between motors to be calculated wrong. We believe this is fixed… After making the adjustments to the gear ratio, @krkeegan ran some tests to rotate the sprocket 360 degrees over a very large number of times (10 times more than what you would do using the machine) and the 12 o’clock tooth was practically dead-on when it was done… So it is not suspected that this is a source of error.

Finally, in order for Maslow to measure the distance between sprockets, it needs to have one tooth on each sprocket set at 12 o’clock. This should be done as precisely as possible to achieve the highest level of accuracy. I don’t think the error it introduces if the sprocket is off by a degree or two is too significant, but if you have a string level and a piece of coat-hanger wire, you can do what @blurfl came up with… see here.