Spent last night finalizing my understanding of the multiplexed signal coming from these encoders. Using a circuit diagram I managed to find, I was able to identify which pins of the integrated circuits on the encoder PCB corresponded to which Hall Effect commutation signal state. This was important, because I could see what the different states of the signals were
before they got multiplexed in the ASIC and compare that to the multiplexed output.
Using some extremely fine (.002" DIA) magnet wire, I was able to solder to each pin I was interested and plot that signal alongside the outputs from the chip measured at the terminal blocks. This was really tricky because I have no light where the robot is right now so did everything by headlamp, and I had to stand on top of the table to reach the motor. Made it really difficult to do some really fine pitch soldering. No shorts though! I couldn't use any flux due to concerns of contaminating the code wheel. I also covered it in plastic when I was not soldering to keep dust out.
And a super close up showing the wire soldered to pin 2 of the Yaskawa JL-041A ASIC.
Here is what I found. All images show channel A leading channel B. Applicable Hall Effect signal is shown as the black trace.
When scoping pin 3 (Hall Channel U), the multiplexed signal could be seen transitioning from NOR to NOT B as channel U rose.
The multiplexed channel could be seen transitioning from XOR to B NOT A when the channel U fell.
When scoping pin 2 (Hall Channel V), the multiplexed signal could be seen transitioning from B NOT A to NOT A as channel V rose.
The multiplexed channel could be seen transitioning from NOT B to A NOT B when the channel V fell.
When scoping pin 1 (Hall Channel W), the multiplexed signal could be seen transitioning from A NOT B to XOR as channel W rose.
The multiplexed channel could be seen transitioning from NOT A to NOR when the channel W fell.
I also scoped the Z0 signal (Index signal) and compared it to the multiplexed signal. The Z0 pulse only occurs once per motor revolution, or once every 4th set of multiplexed patterns. The index pulse comes across as an extra long high state near the end of the XOR pattern where it transitions into B NOT A.
The pattern is nearly identical in the reverse direction (Channel B leading Channel A) but slightly different.
Additionally I was able to confirm that the Z index signal is available (not multiplexed) on pin 4 of the encoder. Yaskaw did not land a wire on this, but it does leave the option for me to rewire the connector to ignore the multiplexed signal, transmit the Z index pulse to the drive, and use self-sensing commutation. You can see the un-pinned slot in the connector where the index pulse is present.
Thanks to this information, I was able to build a full timing diagram of the encoder signals and multiplexed patterns. I am using this to write a specification for a digital circuit to decode the pulse stream. It is a lot more complicated than I expected and requires knowledge of the current and past 3 states of all signals after each quadrature count. I am not a member on any electronics forums, but I intend to ask for help evaluating the feasibility of this circuit on those forums.
I should probably try running a motor with self-sense commutation soon, but I am enjoying decrypting the secrets that Yaskawa packed into their ASICs and trying to learn enough about digital circuits to decode this signal back to the original signals.
-Mike