Оптические мыши

 

Родословную оптических мышей принято отсчитывать с 1999 г., когда в массовой продаже появились такие манипуляторы от Microsoft. Хотя оптические мыши были разработаны несколько раньше в исследовательской лаборатории Agilent Technologies, подразделении известной корпорации Hewlett-Packard. На сегодняшний день Agilent Technologies, Inc. — монополист на рынке оптических сенсоров для мышей. Впрочем, предприимчивые китайцы научились копировать сенсоры Agilent Technologies, поэтому в дешевых изделиях вполне может стоять китайский сенсор.

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

Снимок представляет собой матрицу из пикселов разной яркости. Микросхема не только делает снимки, но сама же их и обрабатывает, так как содержит две ключевые части: систему получения изображения Image Acquisition System (IAS) и интегрированный DSP обработки снимков. На основании анализа последовательности снимков DSP высчитывает направление перемещения мыши вдоль осей X и Y.

Микросхема состоит из нескольких блоков:

  • основной блок, он же Image Proctssor, содержит процессор обработки изображений (DSP) со встроенным приемником светового сигнала (IAS);
  • Voltage Regulator and Power Control (стабилизатор напряжения);
  • Oscillator (блок преобразования внешнего сигнала с задающего кварцевого генератора);
  • LED Control (блок управления светодиодом);
  • контроллер управления, отвечающий за кнопки и колесики мыши;
  • Serial Port (последовательный порт).

Информация с последовательного порта преобразуется в сигналы соответствующего интерфейса (обычно PS/2, USBили Bluetooth) и передается в компьютер. Компьютер, используя драйвер мыши, на основании поступившей по интерфейсу информации перемещает курсор-указатель по экрану монитора.

В целом система оптического слежения мышей, помимо микросхемы-сенсора, имеет еще несколько базовых элементов. Конструкция включает держатель (Clip), в который устанавливаются светодиод (LED) и непосредственно сама микросхема сенсора (Sensor). Вся конструкция крепится на печатную плату, между которой и нижней поверхностью мыши (Base Plate) закрепляется пластиковый элемент, содержащий две фокусирующие линзы (Lens). Оптимальное расстояние от линзы до отражающей поверхности под мышью должно быть в диапазоне 2,3-2,5 мм. Это рекомендация производителя сенсоров. Узкий диапазон фокусировки — основная причина плохой реакции оптических мышей на прозрачные и полупрозрачные подстилающие поверхности вроде оргстекла.

Первыми массово выпускаемыми оптическими сенсорами стали микросхемы НОЫ5-2000. Они имели разрешение 400 cpi (counts per inch, отсчетов на дюйм), что в принципе эквивалентно точкам на дюйм. Сенсор рассчитан на максимальную скорость перемещения мыши в 12 дюймов/с (около 30 см/с) при частоте съемки 1500 кадров в секунду. Допустимое ускорение при перемещении не более 0,15 § (примерно 1,5 м/с2). Хотя сенсор HDNS-2000 считается устаревшим, до сих пор сплошь и рядом в дешевых изделиях встречаются его китайские клоны.

Второе поколение оптических сенсоров представлено микросхемами ADNS-2610 и ADNS-2620. Оптический сенсор ADNS-2620 поддерживает программируемую частоту съемки поверхности под мышью 1500/2300 кадров/с (область съемки 18x18 пикселов). Максимальная рабочая скорость перемещения по-прежнему ограничена 12 дюймами в секунду, допустимое ускорение составляет 0,25 g. Микросхема ADNS-2610 не имеет поддержки режима 2300 снимков/с. Вышедший вскоре сенсор ADNS-2051 позволяет программно управлять разрешением оптического датчика в диапазоне 400-800 срi. Также имеется возможность изменять частоту снимков поверхности в диапазоне 500-2300 снимков/с. Размер кадра составляет всего 16x16 пикселов. Допустимое ускорение мыши 0,15 g, максимальная скорость перемещения 14 дюймов/с. Сенсор ADNS-2030 разработан для комплектации беспроводных мышей, требует питания с напряжением 3,3 В, поддерживает функцию снижения потребления энергии при нахождении мыши в состоянии покоя, переход в режим «сна». Остальные характеристики не отличаются от модели ADNS-2051.

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

Появление чипа ADNS-3060 ознаменовало переход к третьему поколению оптических сенсоров. Микросхема ADNS-3060, по сравнению со своими предшественниками, обладает впечатляющими параметрами. Допустимая максимальная скорость перемещения манипулятора выросла до 40 дюймов/с (почти в 3 раза). Допустимое ускорение увеличилось в сто раз и достигло величины 15 g (почти 150 м/с2). Программируемая скорость съемки поверхности — до 6400 кадров/с при размере кадра 30x30 пикселов и 8-битном представлении в серой шкале. Причем сенсор может сам осуществлять подстройку частоты съемки для подбора оптимальных параметров работы в зависимости от характера подстилающей поверхности. Разрешение оптического сенсора составляет 400 или 800 cpi. Модификация ADNS-3080 отличается увеличенным до 1600 cpi разрешением.

Общая схема анализа перемещений мыши не изменилась по сравнению с более ранними моделями: полученные блоком IAS сенсора микроснимки поверхности под мышью обрабатываются интегрированным DSP (процессором), который определяет направление и дистанцию перемещения манипулятора. DSP вычисляет относительные величины смещения по координатам X и Y. Процессор не обрабатывает кадры сразу по поступлении, а ожидает, пока в соответствующем буфере накопится 2/3 последующего кадра. И только после этого чип приступает к анализу информации о перемещении манипулятора, сравнивания изменения в последовательных снимках поверхности. Затем микросхема контроллера управления считывает информацию о перемещении манипулятора с последовательного порта. Контроллер транслирует полученные данные о направлении и скорости перемещения мыши посредством стандартных интерфейсов в компьютер.

Контроллер управления может быть реализован на самых разных моделях микросхем. Если в сравнительно дорогих устройствах от Microsoft или Logitech он функционирует без проблем, то в недорогих манипуляторах от китайских производителей встречаются не вполне адекватные реакции. Таким образом, причина столь разительного отличия в поведении оптических мышей вовсе не в «плохих» или «хороших» установленных сенсорах, а в несовершенных чипах контроллеров управления и в ошибках реализации механических частей (например, фокусирующих линз).