Vous êtes sur la page 1sur 20

O O

TTSA

2008

(Abstract)

Caprices of the Mouse

Optical mouse can take continuous snapshots very quickly of the contact surface and
compare the images sequentially to detect the direction and amount of movement. This
study uses this feature to design a simple optical measurement system, including lens,
illumination and contact surface choice, as well as the measurement program using raw
input model to accept the movement information from the mouse. This system can
measure the distance and speed of the motion object under the non-friction condition.
From the experiment test result, this optical measurement system is workable and
satisfactory.
Contact surface to optical sensor distance farther, can measure the higher speed of
the motion object, but will cause the lower resolution of the optical sensor. This will limit
the variety of the contact surface; superficial smoother object is unable to measure. In the
future if we can use the high performance optical sensor and assist with rangefinder,
believed this system can have more widespread applications.

Raw Input

1. [1][5][6]

1-1

1-2

1-3

1-4

LED
1

ADNS-2051 2300

USB

LED
2
LED 3

2 LED

2.
Agilent Avago
[5] 2.4 0.1mm
LED

Agilent ADNS-2051
14 1.28


240mm
1400 35.56 128
2.4
240
=
Speed = 1400 (inch / sec)
14 Speed
240mm
240mm
50W

240mm LED 4

3.

(1)

[7]
Agilent HDNS-2100
5

LED

(2)
CMOS
6 Agilent

ADNS-2051 LED
[5]
50W

(3)
7
[5]White Paper
Manila Folder
Burl Formica
Dark
Walnut
Black Copy

(4) USB
Image Acquisition System

Digital Signal ProcessorUSB [5]

USB
USB
PC USB
USB MicroSoft
Windows USB
Human Interface Device HID
Windows API
hid.dllsetupapi.dllkernel32.dll
[2][3]
(5)

1.

(1)
8-1 10 15 22
22 11.36mm

8-2 22

8-1

8-2

(2)
9 1 LED 50
1 LED 1.5 3 LED4.5

240mm 256
50 3 LED4.5
6 4.5

(3)
10 4.5
22

10

2. USB

(1) Raw Input Windows API


MicroSoft Windows USB
Human Interface Device HID
Windows
API
Windows

Windows

Windows
MicroSoft WindowsXP
Vista Raw Input API user32.dll
[8] HID

(2) USB
API
HID Raw Input

GetRawInputDeviceList

RegisterRawInputDevices
Raw Input
GetRawInputDeviceInfo

GetRawInputData
11 Raw Input
Raw Input
[8][9] Microsoft Visual Studio 2005 C# Raw Input

11
3.

(1)
Agilent ADNS-2051[5][7]
2.4mm 400cpicounts per inch

10
12 D

pixel
D = 24cm

2.76mm 2.09mm
D = 24cm
9.2cpi 2.76mm

12

D = 18cm 15.7cpi

0cm

4.71mm
4.21mm
3.73mm
3.27mm
2.76mm
2.09mm
1.96mm
1.62mm
1.44mm
1.32mm

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm

6cm

44.0
44.0
45.0
42.0
42.0
48.0
50.0
45.1
8.2
1.4

88.1
90.0
90.1
87.1
87.0
99.0
100.0
96.0
30.0
2.2

9cm

D = 21cm 13.0cpi

12cm

133.1
135.1
133.2
130.1
131.0
147.0
153.0
145.3
9.0
13.0

177.2
181.2
178.2
175.2
175.0
197.0
205.0
196.7
42.1
15.0

15cm
222.3
226.4
223.3
220.2
220.0
247.0
258.0
245.8
77.0
12.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm

6cm

40.0
38.0
37.0
38.0
41.0
44.0
43.0
7.0
27.0

80.0
79.0
78.0
80.1
81.0
89.0
86.0
172.0
139.2

9cm

12cm

120.0
118.1
115.0
120.1
123.0
134.0
131.0
557.7
233.3

160.0
160.0
155.1
159.2
164.0
179.0
175.0
544.8
419.4

15cm
200.1
199.1
196.1
199.2
206.0
224.0
219.0
574.3
671.5

D = 24cm 9.2cpi

4.71mm
4.21mm
3.73mm
3.27mm
2.76mm
2.09mm
1.96mm
1.62mm
1.44mm
1.32mm

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
34.0
35.0
35.0
35.0
36.0
32.0
34.1

6cm
68.0
72.0
70.0
71.0
72.0
70.0
67.9

9cm

D = 27cm 9.2cpi

12cm

107.1
108.0
107.0
108.0
110.0
104.0
101.8

10

145.2
145.1
143.0
144.1
146.0
127.1
134.1

15cm
182.0
181.1
178.1
181.1
184.0
156.2
169.7

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
32.1
32.0
30.0
32.0
34.0
227.1
3.0

6cm
64.1
64.0
63.1
66.0
70.0
224.4
2.0

9cm
98.1
96.1
95.1
98.0
105.0
217.6
14.0

12cm
130.1
128.2
128.2
132.0
135.0
209.5
9.1

15cm
163.2
162.3
161.3
165.0
170.0
200.0
17.0

D = 30cm 7.8cpi

4.71mm
4.21mm
3.73mm
3.27mm
2.76mm
2.09mm
1.96mm
1.62mm
1.44mm
1.32mm

0cm
0.0
0.0
0.0
0.0
0.0
0.0

3cm
29.0
27.0
28.0
30.0
30.1
2.0

6cm
61.1
55.1
58.1
61.0
60.6
23.3

9cm

D = 33cm 6.8cpi

12cm

90.1
84.2
89.2
91.0
93.9
22.6

120.2
114.4
118.2
121.0
133.3
28.2

15cm

0cm

151.3
143.4
149.3
151.1
153.1
50.2

0.0
0.0
0.0
0.0
0.0

3cm
26.1
26.1
27.1
26.2
21.5

6cm
52.3
53.2
54.1
48.1
34.0

9cm
79.0
79.3
82.2
71.1
51.1

12cm
104.8
107.4
110.2
97.3
76.0

15cm
132.1
132.5
137.3
121.6
94.1

(2)

24cm
2.76mm
2.76mm

13-1

13-2

13-3

13-4

13-5

13-6

15cm

11

D = 18cm

0cm

5mm

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
41.0
45.0
45.0
44.0
45.0
44.0
44.0
45.0

6cm
85.1
92.0
90.0
90.0
88.0
91.0
92.0
91.0

D = 21cm

9cm

12cm

130.3
138.0
136.0
136.1
133.1
138.0
141.0
138.1

175.3
185.0
180.0
180.1
179.1
184.0
188.0
184.1

15cm
219.4
231.0
226.1
226.1
223.1
230.1
237.0
230.1

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
40.0
40.0
40.0
39.0
38.0
39.0
41.0
39.0

6cm
81.0
80.0
80.0
79.0
79.0
81.0
84.0
79.0

9cm
122.1
121.0
119.0
120.1
118.0
121.0
127.0
122.1

12cm
165.1
164.0
160.1
160.1
158.1
162.0
170.0
161.0

15cm
206.0
204.0
200.1
201.1
199.1
202.1
212.0
203.1

D = 24cm

0cm

5mm

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
36.1
36.0
34.0
35.0
34.0
35.0
36.0
35.0

6cm
72.1
71.0
70.0
71.0
69.0
71.0
74.0
70.0

D = 27cm

9cm

12cm

109.1
108.0
105.0
106.0
104.0
106.0
111.0
107.0

146.1
144.0
141.0
141.1
140.1
144.0
149.0
144.0

15cm
180.1
180.0
177.0
177.1
175.1
179.0
185.0
180.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
32.0
32.0
30.0
31.0
31.0
31.0
32.0
31.0

6cm
63.1
63.0
62.0
63.0
62.0
64.0
64.0
63.0

9cm
94.2
95.0
94.0
96.0
93.0
96.0
98.0
95.0

12cm
126.3
128.0
126.0
128.1
125.0
128.0
132.0
127.0

15cm
159.3
160.0
157.0
159.1
157.1
160.0
165.0
160.0

D = 30cm

5mm

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
28.0
29.0
28.1
28.0
27.0
29.0
28.1
28.0

6cm
57.1
58.0
56.0
56.0
56.0
57.0
59.1
57.0

D = 33cm

9cm

12cm

87.1
87.0
85.1
85.0
83.0
86.0
87.1
87.0

116.2
116.0
114.1
115.0
113.1
116.0
118.1
116.0

15cm
145.3
145.0
144.1
144.0
141.1
145.0
148.1
145.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
26.0
25.0
26.0
26.0
25.0
26.0
26.0
25.0

6cm
54.1
52.0
53.0
52.0
51.0
52.0
54.0
52.0

9cm
80.2
79.0
79.0
79.0
77.1
79.0
81.0
79.0

12cm
106.1
105.0
105.0
105.0
103.0
105.0
108.0
105.0

15cm
133.2
133.0
132.0
132.0
129.1
132.0
135.0
133.1

12

D = 18cm

0cm

5mm

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
43.0
44.0
46.0
44.0
46.0
44.0
44.0
45.0

6cm
88.1
90.0
91.0
90.0
87.1
90.0
93.0
92.0

D = 21cm

9cm

12cm

130.0
138.0
137.1
137.0
132.1
136.0
141.0
139.0

178.0
184.0
181.1
183.0
178.1
181.1
189.0
186.0

15cm
229.1
230.1
225.1
229.1
223.1
228.1
238.0
232.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
39.0
38.0
40.0
41.0
38.0
39.0
42.0
39.0

6cm
81.0
80.0
81.0
80.1
79.0
80.1
87.0
80.0

9cm
122.0
121.0
120.0
122.1
119.0
121.1
128.0
121.0

12cm
165.0
161.0
160.1
162.1
158.0
161.1
171.0
163.0

15cm
205.0
201.0
199.1
204.1
199.1
201.1
212.0
204.0

D = 24cm

0cm

5mm

0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
35.1
34.0
34.0
36.0
34.0
36.0
37.0
35.0

6cm
72.1
71.0
70.0
70.0
69.0
72.0
74.0
70.0

D = 27cm

9cm

12cm

110.1
106.0
104.0
106.0
105.0
108.0
111.0
108.0

146.1
143.0
141.0
144.0
141.0
142.1
149.0
143.0

15cm
179.1
179.0
176.0
180.0
175.6
178.1
187.0
180.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
32.0
32.0
30.0
32.1
30.0
32.0
31.0
31.0

6cm
63.0
64.0
63.0
64.1
62.0
65.0
63.1
64.0

9cm
95.0
95.0
94.0
97.1
94.0
98.0
94.2
98.0

12cm
126.1
129.0
126.0
129.1
126.0
129.0
127.1
131.0

15cm
157.1
160.0
159.1
160.1
157.0
162.0
159.2
164.0

D = 30cm

5mm

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
27.0
29.0
28.0
28.0
27.2
30.0
28.0
28.0

6cm
55.0
58.0
58.0
57.0
56.1
57.0
57.1
59.0

D = 33cm

9cm

12cm

83.0
87.0
87.1
86.0
84.1
86.0
87.1
88.1

13

112.0
116.0
116.0
115.0
113.1
116.0
117.2
119.0

15cm
141.1
145.0
146.1
144.0
144.1
145.0
146.3
149.0

0cm
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

3cm
25.0
25.0
26.0
27.0
26.0
25.0
26.0
26.0

6cm
50.0
52.0
53.0
52.0
52.0
52.0
53.1
54.0

9cm
76.0
78.0
80.0
78.0
79.0
78.0
80.1
81.0

12cm
102.0
105.0
105.0
105.0
105.0
105.0
105.2
109.0

15cm
128.0
133.0
133.1
132.1
132.0
131.0
133.2
136.0

4.

24cm 15cm
179.2 pixel 179.4 pixel

Microsoft Visual Studio 2005 C# Raw Input

RichTextBox
PictureBox 14

14

5.

(1)

24cm

15

Microsoft Excel

14

15

R squared = 0.9979

cm

cm

cm

cm

4.6
7.0
10.1
10.7
16.1
16.4
16.9
17.1
20.8
23.0
23.7
25.0
26.1
27.3
30.1

4.6
7.0
9.5
10.4
15.3
16.2
16.6
17.6
22.4
23.9
23.5
24.0
27.8
26.9
31.0

32.3
36.0
38.7
39.1
40.6
41.0
43.7
46.0
49.8
50.7
55.1
56.8
66.3
73.2
78.7

33.9
36.7
37.6
38.9
42.1
41.8
42.6
45.4
50.9
49.7
54.5
55.7
65.4
73.0
78.6

(2)

16-1

16-2

rpm m/s rpm m/s


60
86
176
178
184
186
196
244
334
343
346
402
407
456
498

0.735
1.107
2.855
2.907
3.023
3.143
3.315
3.819
5.959
6.222
6.521
7.750
7.806
8.702
9.461

503
544
554
558
575
693
696
708
723
804
805
868
870
963
984

9.604
10.503
10.623
10.760
10.921
13.114
13.308
13.535
13.787
15.283
15.408
16.329
16.341

Lutron DT-2234B 0.05%


PWN
16

Microsoft Excel

15

R squared = 0.9961 rpm m/sec


2r / 60

2005 Agilent
ADNS-3080 ADNS-2051 40 6469
40 1600cpi

Agilent ADNS-6010 45
2000cpi


870rpm 16.341 35.56

16


1.
2.
3.
4.
5.
6.

7.
8.
9.

Teo Chiang Mei, , RUN!PC , 158 , 2007/03


, USB , , 2004
, - Visual Basic, , 2006/10
, Visual C# 2005 ,
, 2006
Agilent Technologies, Agilent ADNS-2051 Optical Mouse Sensor Data Sheet,
http://literature.agilent.com/litweb/pdf/5988-4289EN.pdf, 2002/01
Agilent Technologies, Optical Mice and how they Work : The Optical mouse is a
complete imaging system in a package, http://literature.agilent.com/litweb/pdf/59884554EN.pdf
Agilent Technologies, Aligent ADNS-2100 Solid-State Optical Mouse Lens Data
Sheet, http://literature.agilent.com/litweb/pdf/5988-2835EN.pdf
http://msdn2.microsoft.com/en-us/library/ms645536.aspx, MSDN Library
Smesser, Emma Burrows, Using Raw Input from C# to handle multiple keyboards,
http://www.codeproject.com/cs/system/rawinput.asp?df=100&forumid=375378&exp=0
&select=2115788#xx2115788xx

17

Vous aimerez peut-être aussi