Про оптическую мышь.
Данная страница посвещена описанию принципа работы и необычному применению оптической мыши.

Положенный в основу работы оптической мыши принцип приметивно прост: видеокамера снимает "подмышную" поверхность - освещаемую светодиодом.

Весь фокус заключается в последующей обработке последовательности кадров - позволяющей определить по двум соседним кадрам направление движения. В мыше для этого используется спешиальный процессор, находящийся в одном корпусе с видеокамерой.

Для предотвращения потери слежения за подмышной поверхностью при быстром движении частота "съёмки" берётся очень большой (1500-3000 кадров/сек) при такой частоте кадров даже при быстром движении соседние кадры значительно перекрываются и обеспечивается устойчивое слежение за перемещением.

Точный алгоритм определения по двум соседним кадрам направления и дистанции смещения на момент написания статьи мне не известен, но как только я его выясню он будет здесь опубликован.
<<<Следите за обновлениями>>>

Отсюда следуют два свойства "датчика"(камера+процессор) применяемого в мышах: он может регистрировать изображения и он может определять смещение.
Как это можно использовать ?

СКАНЕР.
Мышь можно использовать как сканер: разрешение камеры- 400dpi но размеры изображения всего 16х16 пикселей. Для того, чтобы отсканировать некое изображение мышь надо по нему постепенно перемещать, а для определения полежения сканируемой в данный момент области можно использовать информацию о перемещении от самого датчика (тем более больше её взять неоткуда).

Вот пример использования оптической мыши в качестве сканера.
На изображении - герб с 50 рублёвой купюры.

По данному изображению видно, что смещение датчик вычисляет совсем не так уж точно, как это утверждают производители мышей.

А тут можно посмотреть видеофрагмент того, что видит мышь.
(исходное изображение 16х16 было увеличено до 128х128 с применением бикубической интерполяции поэтому невидно "квадратов")
Кодек видео - DIVX 5
opt_mouse_divx5.avi

Описание датчика ADNS-2051 находтися тут.
adns-2051.pdf

Применение данного датчика подобно видеокамере или для работы с изображением окружающих предметов в целях автоматического управления мне не представляется возможным в виду черезвычайно низкого разрешения.

Вот схема "эксперементальной установка".

А вот её фото.


Прграммы и их исходники на PASCALе находятся тут:
Курсор на экране O_MSE_CR.EXE O_MSE_CR.PAS
Регистры ADNS-2051 O_MSE_RG.EXE O_MSE_RG.PAS
Что видит мышь O_MSE_V.EXE O_MSE_V.PAS
Сканер O_MSE_SC.EXE O_MSE_SC.PAS
Библиотека "O_MSE.INC" O_MSE.INC
Библиотека "GR_VID.INC" GR_VID.INC

В заключение надо отметить, что помимо датчика в мыше имеется ещё контроллер, функции которого состоят в обеспечении работы кнопок, колёсика прокрутки, чтении информации о перемещении из датчика и работы по интерфейсу PS/2 USB или COM.

О принципе работы колеса прокрутки и принципе действия обычных (шариковых) мышей читайте в статье "Про шариковую мышь".


(C)2005 O-D-V
>>>dima_2001_2001{NOT_FOR_SPAM}fromru.com
>>>http://o-d-v.no-ip.org
>>>ftp://o-d-v.no-ip.org