I have been struggling for some time to come up with a meaningful way to test the phase difference between two quadrature channels of an encoder. I have access to a DPO 2014B Tektronix scope and have been trying to come up with a way to make it do what I want, but have had no such luck.
An ideal quadrature encoder should have 90 electrical degrees of separation between any of its subsequent quadrature edges (A high to B high, B high to A low, A low to B low, or B low to A high). Ch. 1 is A and Ch. 2 is B in this case (see below).
As we all know, the ideal case typically isn't the observed case. The encoder under scrutiny has a specified edge separation that it must meet and I am interested in measuring the smallest of those to ensure it meets the specification set forth. The encoder has 1024 cycles (so 4096 edges) per mechanical revolution. The third channel contains the index pulse which occurs once per mechanical revolution.
That being said, first let me explain the two methods I have tried so far:
Configure the cursors to the known value for the specification that must be met and physically check each set of edges. This method works, but with so many edges to check is highly impractical.
Use the phase difference measurement of the scope. I had high hopes for this one, but after some back and forth with the support team at Tektronix, found that this actually only measures the average phase difference between the first two pulses on the screen. This is signified in the picture by the two sets of vertical lines to the left of the screen.
I would be fine with not measuring the ABSOLUTE smallest edge separation between all of the edges, but I at least need something that could either come up with an average value, or can sample randomly across the entire waveform.
Does anyone have any ideas? Thanks in advance!