Sensor characterization

The library needed to interface with the sensors is available on GitHub, created by Martijn The and modified by Zapmaker [1].

It gives us have added the access to the SQUAL register, which gives the reading of how good is the surface pattern to detect xy displacements. On Figure 1 you can see the relationship of error in percentage and SQUAL value for one revolution. The maximum SQUAL value was 120 and 0 for no detection of the surface.

Figure1
Figure 1. Relationship between error of the measurement and SQUAL value

Characterization

The characterization of the ADNS2610 optical sensors was performed collecting 30 revolutions using the different axes of the polystyrene sphere. The results obtained reflected the number of the optical sensor internal units per revolution which are 9.391 pn average. The polystyrene sphere has a perimeter of 61.86 cm, therefore, the number of sensor internal units per cm is equal to 151.81.

The SQUAL value was recorded simultaneously and its average value was 82.56 ± 23.92. Figure 2 (left) shows distribution of the SQUAL value. Figure 2 (right) shows the relationship of the speed of rotation as the increment in mouse internal units between two samples and the SQUAL value.

Figure2
Figure 2. Distribution of the SQUAL value (left) and relationship between the speed and the SQUAL value

Calibration

The calibration can be done adjusting the vertical position of the equator of the sphere to make it coincident with the optical flow sensor. Then the horizontal position can be optimized by adjusting the horizontal micrometer until a SQUAL value higher than 100 has been achieved.

Data

The data and code used for the sensor validation are available here

References

[1] https://github.com/zapmaker/OptiMouse