Blev intresserad av detta, så här är vad jag grävt fram...
600px-Quadrature_Diagram.svg.png
dual_sensor_track_figure4.png
Det verkar vara en optisk pulsgivare (roterande och inkrementell). Det är två optiska sensorer som läser av strecken på skivan. Sensorerna är placerade så att de är 90 ur fas, om du räknar det som en fas att skivan roteras med ett streck (från början på ett streck, över till "vitt" och stopp precis innan nästa streck). Det du mätt up är således signalerna från dessa två optiska sensorer som är 90 grader ur fas. När pulsgivaren snurrar medurs anländer A först, följt av B och vice versa när den snurrar moturs. Det är bara när A och B ändras samtidigt från en mätning till en annan som en förändring har skett i riktningen. Se tabellen nedan.
xtruth_table_figure6.png
Läs av dem genom interrupt eller polling. Som jag förstått det kan du få konstiga värden om du inte läser av tillräckligt ofta, vilket kan få det att se ut som att pulsgivaren rör sig i motsatt riktning.
Sedan kan det finnas en Z-signal också som anländer en gång per rotation på skivan, vilket kan användas som en fast referens.
Från Arduino-dokumentationen till analogRead(): "The Arduino board contains a 6 channel (8 channels on the Mini and Nano, 16 on the Mega), 10-bit analog to digital converter. This means that it will map input voltages between 0 and 5 volts into integer values between 0 and 1023."
(Fina bilder från Wikipedia och
revotics.com.)
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.