Hi. I've got an absolute grey code encoder (10 bit) on a bi-directional mobile shuttle. I've converted the grey code to a 0-1023 integer value, giving me 1024 divisions of a single rotation of the drive running the shuttle.
I'm trying to find the best way of calculating the distance travelled by this machine. As the grey code is only calculated every scan of the PLC (around 10ms), it won't see every division of the rotation as the shuttle travels quite fast. I was proposing to do the following:
Depending on which direction the PLC was controlling it to go, it would either increment a counter up or down. The increments would be triggered off a one-shot each time the position integer went greater than 512.
This would only give me a resolution of 1 rotation. Am I missing a better way with more resolution, or is the only real way of doing this is with the use of an incremental encoder?
Cheers.
I'm trying to find the best way of calculating the distance travelled by this machine. As the grey code is only calculated every scan of the PLC (around 10ms), it won't see every division of the rotation as the shuttle travels quite fast. I was proposing to do the following:
Depending on which direction the PLC was controlling it to go, it would either increment a counter up or down. The increments would be triggered off a one-shot each time the position integer went greater than 512.
This would only give me a resolution of 1 rotation. Am I missing a better way with more resolution, or is the only real way of doing this is with the use of an incremental encoder?
Cheers.