You typically don't use a dial gauge to measure absolute distances because if the plunger is at an angle the measurement will be off. A more accurate way to measure a displacement is to zero the dial gauge on the bed, jog it down X, then insert an X gauge block and verify that the gauge still reads zero.
That being said, you've measured a fairly large error so its possible that the bed is moving to a location where it has more leverage on the frame, or that the belt has stretch varying with the length of loaded belt between the drive pulley and the bed. Maybe measure the compliance of the bed under say 500g load at two locations and see if one spot is less rigid than another?
I don't like measuring linear errors of this sort because if you don't have periodic error (or horrific mechanical problems) the screw/gear/pulley will be more accurate than your measuring tools. Technically you could change the steps/mm to compensate for some types of belt stretch, but then you have to ask yourself if you really want to extrapolate the measurement from a 1" dial gauge over the entire printer travel (especially since such errors will also vary with load).
I might play that game if I had a surface plate, level, and a set of gauge blocks, but its ridiculous to assume that calculating steps/mm over an 8" inch travel by measuring a 1" section with a 12$ dial gauge will be an improvement. Just do the math and use the theoretical number.
Also note that if you are measuring displacement at only one point the table could be rolling/pitching and it would look like a linear error (over short distances).
PS: Its a dense read, but Foundations of Mechanical Accuracy is available online and is quite interesting even in the context of 3d printing: [
pearl-hifi.com]
Edited 3 time(s). Last edit at 04/16/2018 11:27AM by 691175002.