Iāve had it on hold, primarily because of family visiting over the holidays. Iām going to start working on it shortly here, and could definitely use some testers to help validate that it works before it gets merged. With my Maslow on order I canāt actually verify the code works as desired, but would be happy to get the code written and PR submitted.
Trying to use the Maslow Triangulation Calibration spreadsheet ā GC 1.0
Where do I find the value for āprogrammed chain lengthā?
What kind of cuts should be made? A hole or a horizontal slot?
What we did is position the sled within a few inches of the 4x8 sheet vertical centerline, and about 3 " down from the top edge and drilled a 1/4" D hole ā Then lowered the router 900 mm toward the bottom sheet and drilled another hole. Should we have made sure the router was exactly on the centerline, instead of 4-5" to one side?
Your process of drilling the first hole near the top and the second near the bottom is good. This calculator assumes that both chain lengths are always the same for this calibration process, and that as one is extended the other is extended the same amount. This would ensure the sled is always in the exact middle of the motors, as well as the workspace (assuming the workspace center aligns with the motor spacing center).
Regarding your questions:
Currently it looks like this isnāt possible in any automated manner. I was hoping that the calibration routine or some other setting would allow manual chain lengths to be entered in GC, but Iām not seeing it there.
In this case I was considering a point cut, so Z axis down and then back up without the sled moving.
I donāt have my Maslow yet (next batch!), so I hadnāt actually ever used GC when I made this spreadsheet, hence the issue of it not being usable because of lack of ability to get the chain lengths. I apologize about that. Since making that document I have downloaded GC and been playing with it, to get an idea for how it works and see now that the chain lengths are not available.
The best option at the moment to test this would be to use G code commands to extend the chains known lengths to achieve the cuts, then enter those values into the spreadsheet.
In the meantime, Iām currently working on integrating this into GC so that it can be tested, and hopefully eventually merged into the project. I envision this being a new calibration routine, with a step where you have buttons to extend and retract both motors at the same time to position the sled for each cut. GC would already have the chain position as it would be tracking it, so the only things needed to be entered by the user would be two measured distances of the cuts.
Iād suggest letting the cal routine choose the chain lengths, based on a ābest guessā of the motor height and the entered value of the sheet height. The cuts donāt have to be at known locations, only somewhere on the sheet along the centerline, and preferably spread apart to reduce the effect of human error reading the value .
I agree that the user shouldnāt have to enter the chain lengths at all. I was referring to the spreadsheet in that case, but it wonāt be relevant when the code is finished in GC.
The software doesnāt really know the size of the machine, so having it pick the
locations based on a guess will run the sled into the floor or off the top in
some cases.
If you make one of the positions the center of the sheet, you can do the
calibration with one measurement rather than two.
This is a great idea. That never crossed my mind, but youāre right. The only downside would be the difficult of positioning the sled over that point, but I donāt think it would be very difficult.
The software knows the size of the sheet and the default value or the userās estimate of the motor height. That is enough to choose the locations.
Until all the calibration is complete, the center of the sheet isnāt accurately known.
The method described calibrates the rotationalRadius as well as the motor height with the two cuts and two measurements.
Personally, I would not worry about the exact center, but rather try to get as
close to the center as possible with a sprocket tooth straight up so that when I
re-hang things itās at the āhomeā position.
If anything, Iād go a few mm low and then cut the bottom brace to give me a
surface that I āknowā is parallel to the top beam (cutting into the 3/4 plywood
just a hair so that sawdust has a place to go other than sitting in the corner
where it will be in the way of the workpiece)
They are part of the default settings. The user can alter them either in the settings panel or during the calibration sequence. None of this works if they are zero or blank.
And thatās a second measurement, right? Not simpler than a tape measure measurement from the top cut to the top of the sheet just above. Too, donāt assume that the geographic center of the spoil sheet is accurately centered beneath the motors. There good and simple reasons that might not be true - for the purpose of accurate calibration, that canāt be assumed.
As above, itās still two cuts, two measurements. And no need to try to guess whether the router bit is centered over the center mark.
And thatās a second measurement, right? Not simpler than a tape measure measurement from the top cut to the top of the sheet just above. Too, donāt assume that the geographic center of the spoil sheet is accurately centered beneath the motors. There good and simple reasons that might not be true - for the purpose of accurate calibration, that canāt be assumed.
As above, itās still two cuts, two measurements. And no need to try to guess whether the router bit is centered over the center mark.
except that the ādefine this as the centerā isnāt critical to the calibration
for accuracy (as long as the chains are the same length), it just defines where
0,0 is. If itās 9" high it doesnāt make the machine any less accurate, it just
means that the machine has less +y travel than -y travel.
When you do two measurements with the tape measure, I believe that both of these
are critical to making accurate cuts afterwords.
Both methods arrive at 0,0. One calculates it by measuring from the top of the sheet to a cut after the cuts are made. The other starts by defining 0,0 as where the bit is when the calibration starts.
I donāt think thatās how the calculation works. The rotationRadius calculation only uses the first measurement, the difference between the two cuts. Once the accurate rotationRadius is known, the distance from the motor shaft center to the top cut can be calculated. The measurement to the top of the sheet simply indicates how much of the distance is on the sheet and how much is above it. The center of the sheet is calculated from that information.
PR 547 has been created. I donāt have my Maslow yet so I have not been able to verify the G code, or the accuracy of the final parameters, so I would ask that if any users have time to validate and let me know if you encounter any issues!