Hola, en una cuenta binaria, puede haber entre un numero y el siguiente, mas de un bit que cambia, entonces, por una pequeña diferencia de alineacion entre los sensores, justo en el cambio entre un valor y otro, podria leerse o interpretarse un numero totalmente distinto.
0000
0001--- aqui solo cambia un bit, con respecto al numero anterior
0010-- aqui cambian 2 bits,
0011---aqui solo cambia un bit
0100----aqui cambian 3 bits
y el ultimo 1111 al pasar a 0000 estan cambiando los 4 bits
imaginen que es imposible una alineacion perfecta, siempre se sensara (opticamente, magneticamente etc) unos antes que otros, por lo que en esa transicion, se leera un valor diferente..
en el codigo de gray, solo cambia siempre un solo bit
, eliminando ese error
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000 como veran, estan "reacomodados" pero solo hay un bit que cambia entre un numero y el siguiente o anterior
Los encoder opticos emplean esta tecnica, es decir, siguen siendo un numero binario, pero estan ordenados de otra forma, en este caso GRAY, su inventor