Hey all following this thread, I think Brian finally has this almost licked. As it turns out, the iGaging Absolute scale use a 3 track magnetic strip encoded for the Absolute position.
Our work schedule has made progress slow going, but appears he may have a working algorithm soon.
We believe the math of the scales has been figured out and it's just a matter of finding the constants for error correction, then writing the sketch, and building the controller.
For anyone with any suggestions, here's the information he sent me:
With the cyclic counts we've got, I figured out the basic equation:
F: XXXXXXXXX
M: +YYYYYYYY00000
C: +ZZZZZZZZ000000000
zzzzAAAABBBBXXXXX
Where X is the fine track read, Y is the medium track read, and Z is the coarse track read, B is the sum of X and Y, A is the sum of X, Y, and Z, and z is the carry of all the math.
The trailing zeroes show the shift (that's multiplication by a power of 2) that is needed to account for the number of fine tracks for the medium and coarse tracks.
The final result is the sum of all 3 numbers. Notice how the last 5 bits are all fine track.
Funny thing is, that gives us a 17 bit number, or 2^17, or 131072. I was doing calcs before on the mm scale run and came up with a largest possible value of 1310.72 mm, or 51.6".
That number will be unique and sequential for the entire run.
Pretty much the only thing left now is to find the constants for error correction. Since there are only 16 possible Medium values for every Fine, and 16 possible Coarse values for every Medium, that should make the calc fairly simple.
We could do this without error correction, but any noise on the medium and coarse tracks would be HUGELY amplified, giving a rather large and unacceptable jump every so often in the readings. There does seem to be quite a bit of noise in the coarse track.
Looks like my mission here is finally winding down. May take a while longer to get it all cleaned up, but I see a light at the end of the tunnel.
This will have the advantage of not needing any type of battery back-up to maintain scale position or lose position on power loss. One issue will be the position update rate. The scales transmit on a 10 Hz frequency making the read-out a bit laggy when moving fast. Once the constants are found for error correction, the code should make the output stable like the OEM display are with no jumping around, but if used with fast feed rates, will require stopping or slowing down to come in to final position without overshoot.
I have a copy of the Excel spreadsheet with all the scale data for anyone wanting a copy, just shoot me a PM.