Out of curiosity how far was your printer out?
Hope you and your family have a fantastic New Year.
Steve
Out of curiosity how far was your printer out?
And, BTW, I had pretty similar numbers -- 88.94 steps/mm
/Applications/GPX/gpx [output_filepath]
Obviously you need to change the gpx program path to suite your machine.
Anyway, this will cause the settings in gpx.ini to get used.
converting with GPX on the commandline at 88.95 steps per mm for X and Y did the job.
<axis id="x" length="285" maxfeedrate="18000" homingfeedrate="2500" stepspermm="88.573186" endstops="max"/> <!-- Pulley dia: 10.82mm / 1/16 step = 1/(10.82 * pi / 3200)
My method is 18T GT2 pulley @ 2mm pitch is 18*2= 36mm/rev and we know at 1/16th stepping the motor is 16*200=3200 steps/rev so 3200/36mm=88.88888888888889 steps/mm
To recap:
88.573186 is STOCK
88.88888888888889 is what I would say is proper "theoretical"
88.95 is now the "suggested value"
My concern was and alway will be that scaling is NOT a number to be playing around with. There is one correct value and that's it. The end result is the belt attached to the motor should move the correct distance. Since there isn't any kind of extra multiplier mechanical ratio in the bot, any deviation is then assumed, and with good reason, to be backlash. If scaling is incorrect, it's like a 24 hour clock that is broken, it's right only once a day. I build machines with even longer axis and such a "scaling" error becomes extremely evident the larger you go. I think it is bad practice to do "fuzzy" math compensating for backlash using scaling, and assuming that because the max build size is smaller the total error percentage is within reason.
If belt pitch is wrong, then given enough movement, the teeth simply do line up with the pulley teeth and it either jumps the belt or has a lot of friction. Effectively it must be 2mm pitch. This is why I dislike the "pitch diameter" method of calcs because they are so prone to error. The pitch diamter is not any measurement you can make of the pulley. It's not the teeth diameter and it's not the root diameter. That means it's total guesswork.
Again, the reason I bring this up over and over is we need to get to the bottom of the logic of what is happening. Obviously, you cannot make a fraction of a step. The bot either moves a step or it doesn't. This means that rounding calcs to the next even step happen.
Basically, there are 3 logical conclusions here:
If the suggested value is correct scaling, then the belts and pulleys are not manufactured to 2mm pitch and the firmware and software are correctly rounding = pulleys and belts are the root cause
If the pulleys are correct and the belt pitch is correct, then the answer is the firmware and software have flawed rounding= Flawed firmware/software
If the mechanics are that sloppy that they are introducing backlash, overlaying a scaling change is not the correct way of compensation=flawed mechanics and improper way of adjustment..
Again, the numbers are telling. MakerBot's numbers are just bad info and a bad way to calculate the value. It's pretty obvious that's the case when you compare it to the pitch and teethcount calc. The fact the manually adjusted anumber is higher than both stock and the theroetical values indicates LOST motion. We have to tell it to move further to to achieve the actual distance. That's clearly backlash in my book.
Being that BOTH Makerware and Replicator-G (Skienforge) have backlash adjustments in the profile, I find it odd that you are NOT using that to correct.
In fact, don't you find it odd, that Makerbot went to a lot of effort to put such a comprehensive backlash adjustment method in Makerware? Wouldn't that be somewhat telling they acknowldege there is significant backlash in the mechanics of the machine? While Rep-G was Universal to run many bots, Makerware is purpose built and intended to run on MakerBot machines.
http://www.makerbot.com/support/makerware/documentation/slicer/
Backlash occurs when there is some amount of slack on one of more of your bot's axes. When the extruder changes directions, some small portion of the first movement in the new direction will be taken up by that slack, and the resulting move will be slightly shorter than intended. Backlash can affect dimensional accuracy. When "doBacklashCompensation" is set to "true," the settings below will attempt to compensate for backlash. When "doBacklashCompensation" is set to "false," none of the backlash settings below will be used. This feature is experimental and use may result in some slight distortion in printed objects.
The MakerBot Slicer compensates for feedback gradually in order to reduce distortion. It will compensate for a certain amount of feedback over the distance set in "splitMinimumDistance." The amount of feedback compensated for in each segment of the length set by "splitMinimumDistance" is a percentage inverse to the number set here. For example, if the default "backlashFeedback" setting is 0.9 and the default "splitMinimumDistance" is 0.4 mm, the slicer will compensate for 10% of the remaining feedback error over the first 0.4 mm after the change in direction. Then it will compensate for 10% of the remaining error over the next 0.4 mm. This will continue until the size of the error meets or falls below the distance set in "backlashEpsilon." If "backlashFeedback" is set to 0, the entire error will be compensated for immediately.
When you use the "backlashFeedback" setting, the slicer compensates for increasingly small amounts of error over distance. The remaining error gets smaller and smaller, but is never fully compensated for. The "backlashEpsilon" setting fixes this problem by ending the backlash compensation when the remaining error becomes so small as to be insignificant. When the remaining error is smaller than the distance in millimeters set here, the slicer will stop compensating for backlash.
The "backlashX" and "backlashY" settings tell the slicer how much backlash the slicer should be compensating for. To determine if backlash is present, print a 20 mm calibration box (available under File > Examples in MakerWare) and measure the length and width of the printed box. If either the length (Y) or width (X) of your box is less than 20 mm, subtract that value from 20. Divide that number by two and enter the result into the appropriate backlash setting.
Again, the basic idea that I amd trying to present is that YES, I agree, there is a slight error in the way MBI calculated steps per mm in the config. Why this default value hasn't been changed in like 2 years blows my mind but hey, who said anything at MBI makes sense.
That said, I believe the "correct" method is to use the "theoretical" value I have presented, and properly use Backlash compensation as your fine tuning.
To my surprise on the printed part the bars are now exactly 5 mm wide,
all holes are exactly 10 by 10 mm and the overall length is exactly 110 mm
in both directions. I don't know why the 88,95 work while the theoretically
correct 88.88 steps per mm produce too small parts. Maybe someday we
will find it out.
Kudos to Wingcommander for finding this sweet spot.
--
You received this message because you are subscribed to the Google Groups "MakerBot Operators" group.
To unsubscribe from this group and stop receiving emails from it, send an email to makerbot+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Again, I know I'm a pain but I want to better understand why we arrive at 88.95 rather than 88.888889.
Quite accurate, but only a little over 2 inches of travel.
Actually my approach was to move it a known number of steps and then measure
the amount moved.
My big question is this: Is there a way to flash the values into firmware on a Replicator/2/2X, rather than through software?
Great observations guys.
Wingcommander: Let me know if this also works for your big running bike parts.
So I while back Jetguy posted an alternative steps per mm calculation which I have been using in GPX[x]steps_per_mm=88.88888888888889[y]steps_per_mm=88.88888888888889However I decided to manually calibrate my printer using the attached script with a set of digital callipers I use for tramming my mill, which are attached to a magnetic clamp. With it I am getting within +/- 0.01mm using the following settings in GPX.[x]steps_per_mm=88.95[y]steps_per_mm=88.95As always YMMV.