Hi BobM3,
May be let's forget about the vibration issue first.
Before doing any serious experiments, I need to align the position encoder signal to 'match' the back-emf waveform of the motor. Let's say the PM motor has a single pole-pair. Now the DC generator is operated as a DC motor that drives the PM motor. An oscilloscope is used to capture the back-emf of phase A of the PM motor. The out signals of the position encoder (i.e. A,B,INDEX) are fed to a microcontroller with built-in QEP module. The microcontroller calculates the rotor position (0-3999) and output a 12-bit data to a Digital-to-Analog converter (DAC). The output of the DAC is fed to another channel of the oscilloscope, and to compare with the back-emf as shown in attached image.
To align both signals, I need to add an offset value to the computed rotor position value (in microcontrol program) so that the THETA becomes zero. Several tests were done as follows:
[T1] PM motor was rotated in counter-clock-wise (CCW) direction. An offset value of "125" is required to make the THETA becomes zero.
[T2] PM motor was rotated in clock-wise (CW) direction. With the same offset value of "125", the THETA was found not equal to zero! After adjusting the offset value to "120", the THETA becomes zero again.
[T3] PM motor was rotated in CCW direction. With offset value of "120", the THETA was not zero. After some adjustments, an offset value of "128" is required to make the THETA to be zero.
Obviously, the offset values required to make the THETA to be zero in T1, T2, and T3, are not consistent! Therefore, I suspect the problem is due to the couplings between the PM motor and DC generator, as well as between the DC generator and the position encoder. Please comment if I'm wrong.
Thank you very much