Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Magnetic Scales - low resolution
I decided to try and make up a TouchDRO setup on the cheap. An MSP430 Launchpad was $20 and the Bluetooth module $7 (Australian dollars, so about US$19 all up). Those bits, and the quadrature firmware went together no problem at all. For the scales, I decided to get this read head:
and this magnetic strip:
Which all seemed pretty cheap for a magnetic scale, and, potentially, easy to install.

First hurdle was the read head had no pinout or colour code, nor supply voltage spec, so I had to hunt around, but found the wire colour code matched similar-looking devices. Then, with a 5V supply to the head, the output signal had a 75mV amplitude, not the TTL signal I was expecting. I wasn't sure if it was due to the supply voltage - raising it to 7V increased the signal to 100mV, but I wasn't willing to go above that for fear of frying the read head.

My theory is that these heads, being comparatively cheap at US$62, might be a custom design for the "Optimum" brand DRO unit, and maybe they skipped some signal conditioning circuitry in the head. Or maybe I'm way below the required supply voltage, I dunno.

So I put the complementary signals from each channel through an instrumentation amplifier to bring the signal up to a single-ended 0-3.3V output. That interfaced just fine with the MSP430, and the TouchDRO display increments and decrements accurately and repeatably.

However, the resolution is only 0.5mm, which seems to be 1/100th of what I was expecting for a 5µm system. 

Any suggestions on what to try next?
I've run into something similar.

I have a Weiss VM25L mill with the preinstalled Weiss DRO. I've been trying to understand the signals coming from the encoders. Like yours, they are very weak. The strongest signal I've seen is <200mV.  I haven't had much luck seeing those signals on an oscilloscope because of the other noise (but then again I know nothing about how to deal with a noisy environment when using an oscilloscope)

I was able to get some stronger signals using a couple of op amps as straight differential amps with the A and A- going into one op amp and the B and B- going into another. I got  to the point where I could see the A channel leading the B channel in one direction and vice versa in the other. I thought I was there, however, when I tried to build a more advanced circuit using a differential line receiver to TTL, I found that I wasn't seeing all the pulses that the Weiss DRO must be detecting. That is, when I moved the table, the Weiss DRO would detect lots of changes to location, where I could only see a smaller number.

I've started analyzing the circuit on the Weiss DRO display, to see what it is doing. I'll try to post some more information over the next two days including what I think the schematic is for the Weiss DRO and the signals I was getting with the op amps.
Having a look at the pics of that Weiss Mil on the DRO Pros site, I can see that the read head and strip setup is quite different to the magnetic DRO scales they sell elsewhere on their site. And that head and strip looks somewhat similar to mine.

I've attached a pic of my very neatly laid out test setup:

These are the A and B signals:

My current conclusion is that there's a reason why the magnetic heads that put out a higher-resolution pulse stream and considerably more expensive than the head I have - they're doing a bunch of interpolation based on the relative values of the A and B signals to basically add in 500 or 1,000 intermediate points between the magnetic poles on the strip, which are apparently 1 or 2mm apart.

The units you and I have save money by shifting all that into the DRO display unit and using a simpler, cheaper head that just puts out raw sine and cosine signals.

Very interested to see what's going on in the DRO display.
Here's a link to a read head that must be quite similar to what we have.

The page includes a picture of the signal pattern. The table of electrical data shows a signal period of 1000um.

As for the circuit in the DRO display I have, the signal goes through some opamps, I assuming for conditioning, and then is routed to a large IC.

Here's what I figure out for the schematic for the portion of the DRO board that deals with the signals before they are sent to the large IC.


The opamps are AD8544. I couldn't determine the values for the capacitors.

So do you think the logic in the DRO unit is sampling the analog wave to determine the phase angle of the two signals within the 1mm period?

I also found this link:
I used an AD623 Instrumentation Amplifier on each channel, which is, more or less, all those op-amps in one package.

And yup, I think there's an A/D converter required to sample the A and B voltages and compare them to the previous samples to determine if there's been a change due to movement of the head. From the look of that TI doc, the A/D is typically 16 bit, which would not be cheap, hence the high price of the "proper" heads.

Unless there's an application-specific IC that does this, I'm starting to think this might fall into the too hard basket?
Here's a couple of things I've found. iC-Haus has this whitepaper:

and a number of ICs that do sin/cos interpolation to incremental quadrature output. This one looks promising:

Available here:
Looks like an ideal solution.

That said, I haven't done much surface mount stuff, and especially not a 48 pin QFN package that is 7x7mm!

Could be a learning experience I guess...
Hey Russ,
It looks like you might have the SPM MR500-series scales? Maybe a rebranded version?
I live in China have come across them online out here and was temped to buy them, too but got stranded. The stuff you guys are talking about is above my pay grade so a simple question for now: Did you get them to work as is? And what is the problem with them if you did? And if the issue was too big, did you manage to fix it with added circuitry?

Back when I looked at these, I saw a cheaper series called MR50 but didn't see much difference so I emailed the company. I will C+P their answer, but while I still didn't really understand it, you guys probably do. Don't know if it is of any help though, but here we go:

Output signal is difference.
MR500 is differential signal (A ;  /A  ; B ; /B ; Z ;/Z)
MR50 just has A B and without Z signal(reference point)
Please see the Mail-attachment
Best regards

Another website of theirs is found here:

Also, the company employee sent me this data sheet:

Attached Files
.pdf   SPM Magnet scale (Eng VER.).pdf (Size: 653.14 KB / Downloads: 11)
I've circled back to this project after many years. I found another IC, the iC Haus iC-NQI, that comes in a TSSOP20 package so it is easier to work with for me. I've been playing with it a bit and have had partial success. My biggest issue seems to be getting a clean signal to the chip. I'm seeing lots of noise and the various circuits I've seen online to deal with these low voltage signals don't seem to help. I wasn't able to use the built-in signal amplification, so I have the signals from the scales running through INA126P instrumentation amps. With this I get a signal that is 500mV point to point and feeding that to the NQI gets incremental output. The issue I'm having is that transient noise causes incorrect incremental output.

In any case, this is a potential solution. Hand soldering them to a breakout board was not too hard.

Here is a link to the manufacturers site:

I purchased mine at Symmetry Electronics

Forum Jump:

Users browsing this thread: 1 Guest(s)