Hello,
I have the following setup:
- Encoder 512 Signals per revolution (2048 Edges, A+B)
- Vidor Encoder Programm (https://www.arduino.cc/en/Tutorial/VidorEncoder).
- Speed: abaout 600 rpm -> 20480 Hz signal rate
When I am using the normal programm the encoder status is only uptaded on the serial monitor about every half second. And even though the counter is refreshed when the count is eather +2048 or -2048 the value in the serial monitor can get higher. (example: 2155)
When I deleted the following coder, the serial monitor is updated way quicker and the value doesn't get anymore over 2048.
//#if 1
//
// // Wait one second with interrupts disabled
// noInterrupts();
// // We can't call delay() since it uses interrupts, so use busy loops
// for (int i = 0; i < F_CPU / 10; i++) {
// asm ("nop");
// }
// interrupts();
//
//#else
// //delay(1);
//#endif
But when the part is turning a couple hundret times my zero-point of the shaft is drifting away, which means that the encoder is skipping some signals.
Does anyone has experience with the Vidor and using an encoder?
Thank you
Mike