Принцип работы компьютерной мыши схема. Что такое мышь и как она устроена. Принцип работы мыши

Если у Вас сломалась компьютерная мышка, не спешите покупать новую. Вполне возможно, что Вы самостоятельно сможете починить поломку и устройство прослужит Вам ещё не один год.

Барахлит сенсор мыши

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

Засорение чаще всего бывает внешним. В отсек, где свет диода отражается от стола, попадает пыль или волосы. Чтобы избавиться от такого засорения не нужно даже разбирать мышку. Достаточно перевернуть её и продуть. В крайнем разе, воспользоваться небольшой кисточкой, чтобы удалить прилипший мусор.

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

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

Если и после всех попыток очистки сенсор нормально не работает, то при наличии другой мышки, паяльника и прямых рук, можно выпаять нерабочую микросхему и заменить её датчиком от другой мышки. Однако, это уже требует определённой сноровки, поэтому не все смогут провернуть такое...

Прокручивается колёсико мышки

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

Для начала нужно внимательно рассмотреть, насколько равномерно колесо крутится в пазе. Сам паз и ось колеса имеют шестиугольное сечение, но иногда одна или несколько сторон этого шестиугольника может деформироваться, в результате чего будет наблюдаться проскальзывание оси в проблемном месте.

Если у Вас именно такая проблема, то она решается за счёт уплотнения края оси колеса скотчем или изолентой в небольших количествах. Если же с движением колёсика всё нормально, то поломка произошла внутри энкодера (датчика прокрутки). От длительного использования он мог разболтаться и его следует немного уплотнить:

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

Увы, в моём случае полностью избавиться от рывков не удалось. Да, частота и разброс в скачках страницы уменьшились, но сами скачки полностью не исчезли. Тогда я решил подойти к вопросу уплотнения радикально и истинно по-русски:) Вырезал из старой упаковки от батареек кусочек тонкого но плотного полиэтилена и воткнул внутрь механизма:

Что самое интересное, данная манипуляция помогла! Мне осталось только обрезать лишнюю длину полоски и собрать мышь:)

Не работают кнопки мыши

Последняя, и самая досадная, поломка - это нерабочая кнопка. Левая ли, правая или та, что под колёсиком не важно - они все обычно одинаковы. Важно то, что нерабочая кнопка практически никак не чинится. Можно только заменить её микропереключатель, выпаяв паяльником нерабочий и поставив на его место новый или позаимствованный из другой мышки.

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

Иногда кнопка ещё работает, но срабатывает не при каждом нажатии. Такой симптом может сигнализировать о том, что от частого использования стерся край толкателя кнопки, который нажимает микропереключатель.

Разбираем мышь и внимательно изучаем проблемную кнопку и её толкатель. Если видим небольшую вмятинку, то проблема может быть именно в ней. Достаточно залить промятое место капелькой эпоксидной смолы или расплавленной пластмассы.

Последняя проблема с которой Вы можете столкнуться - кнопка мыши делает двойной клик при нажатии на неё. Решить это дело можно перепайкой микропереключателя или... программно! В любом случае перед тем как браться за паяльник проверьте правильность настроек мышки в Панели управления Windows:

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

Выводы

Мышки - одни из наиболее активно используемых устройств компьютера. Поэтому неудивительно, что они часто выходят из строя. Однако, благодаря простоте их устройства, починить мышку в большинстве случаев может каждый!

Для этого необязательно уметь паять или разбираться в электронике. Главное чётко диагностировать причину поломки. Здесь, как в медицине, правильный диагноз - путь к успешному ремонту.

Надеюсь, наша статья позволит Вам определить, что именно сломалось в Вашей мышке, а значит, и починить поломку. Успешного Вам ремонта!

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

Вы когда-нибудь задумывались, как устроены вещи, какой путь они проходят от идеи до реализации, насколько просты простые вещи? Насколько просто сделать расческу? А компьютерную мышь? А деревянную компьютерную мышь из цельного бруска красного дерева с ЖК-экранчиком, с собственной электронной начинкой и изготовленным и оплетенным специально для нее кабелем? Думаю, вам будет интересен мой путь, который я прошел за 2,5 года создания моей мышки.

Дизайн, конструирование, моделирование

Поскольку в конструировании я был полный ноль, то и к делу я подошел как полный профан. Купил пластилин и начал лепить мышь своей мечты.

Сначала я слепил мышь, которая идеально мне подходит для работы на десктопе. Она на фотографии большая темно-серая. Затем я слепил мышь, которая подошла бы мне на роль мобильной (темно-серая маленькая). А затем я отнес сворованный у детей кусок пластилина на работу, и коллеги вылепили мышь, претендующую на звание «народной». Она идеально ложилась в руку большинству мужского населения нашего коллектива (на фото разноцветная). И что же? Получились банальные и унылые формы, которые мы денно и нощно дергаем руками на все лады. Видимо, среди трех стандартных мышей любой пользователь найдет для себя удобную. Торжество идеала?

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

На тот момент она мне безумно нравилась. И, недолго думая, я разделил компьютерную модель на детали. Были продуманы элементы крепления и сопряжения с электронной начинкой. Звучит просто, а на деле были потрачены сотни часов кропотливой работы.

После этого полученные детали были выращены на 3D-станке для проверки собираемости.

Материал - полиамид. В руке сидит хорошо, как влитая. Все детали подходят друг к другу, технологическая сборка также прошла без проблем

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

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

Долго думал над дизайном. Что-то смущало, и не было чувства удовлетворения. Потом понял - мыши не хватает солидности. Решил вернуться к первоначальному варианту мыши, который я лепил в самом начале, только на профессиональном уровне и с использованием скульптурного пластилина. В одной мыши сделано два варианта дизайна. Удобно для сравнения и принятия решения.

После получения финального варианта было сделано 3D-сканирование и перенос поверхностей в SolidWorks.

Вторая модель получилась не намного удачнее первой. Кнопки не нажимались, и исправить это в текущей модели было невозможно. Брак модели был заложен на уровне ДНК. Нужен более комплексный подход с одновременным контролем и дизайна, и технологии. Иначе ничего не получится. Будет или технологическое совершенство, или хороший дизайн, но не все сразу. Эти характеристики сидят на разных сторонах качелей. Поэтому выкидываю все в помойку и начинаю с начала. Эскиз-дизайн-лепка-тестирование-выращивание и так далее, но с технологическим контролем критических параметров с одной стороны, и дизайна с другой. Ищем золотую середину.

Третью модель делал уже в рамках классического цикла проектирования продукта. Начал с эскиза.

Нарисовались контуры.

И, наконец, утвержденный дизайн.

Пластилиновый макет.

3D-сканер, получение поверхности.

Компьютерная модель.

Затем начался процесс доводки корпуса. На станке ЧПУ выпиливался корпус, тестировался, дорабатывался, затем снова выпиливался. В итоге работоспособным получилась только десятая версия корпуса. Самой большой проблемой было сделать комфортным нажатие клавиш. В итоге в некоторых местах толщина дерева уменьшалась до 0,7 мм! На процесс доработки корпуса у меня ушел год.

Деревянными были сделаны также колесико и разъем.

На колесико я нанес лазерную гравировку с брендом Clickwood.

На подходе одиннадцатая версия корпуса, куда я внесу незначительные изменения. Также я начал разработку беспроводной версии мыши. Беспроводный модуль базируется на технологии Bluetooth, оптосенсор - лазерный. Аккумуляторы типоразмера ААА, 2 штуки, с возможностью замены. При подзарядке мышь будет продолжать работать. Все элементы расположены очень плотно, при компоновке пришлось изрядно поломать голову. В качестве контейнера для батареек служит полость, специально вырезанная в деревянном корпусе мыши.

Деревянные детали

Работа с деревом начинается с отбора древесины. Доски должны быть правильной геометрии, иметь минимум сучков и пороков, и иметь необходимую влажность.

Поначалу доски сушатся дома. Минимум полгода.

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

Подготовленные бруски обрабатываются на станке ЧПУ с помощью специально созданной программы.

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

Обработку верхней детали мыши приходится делать с ювелирной точностью, поскольку профиль ее разработан для мягкого клика и в некоторых местах очень тонок. Усилие нажатия я контролирую граммометром. В обычных мышах оно колеблется от 50 до 75 ГС. Я стараюсь добиться 50 ГС.

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

В дальнейшем планирую поработать с костью. В частности, уже занимаюсь созданием колесика из кости.

Электронная часть

Первую схему мыши я разработал самостоятельно. В качестве сенсора взял топовый оптический датчик ADNS-3090 фирмы Avago, мозгами стал контроллер фирмы Atmel, остальные комплектующие брендовых компаний типа Murata, Yageo, Geyer, Omron и Molex.

Особое внимание уделил качественному питанию мыши, тут, по-моему, своим перфекционизмом достиг абсолюта

Первая работающая макетка.

В черном исполнении, финальная.

Также были эксперименты с различными кнопками. Я всегда пытался среди прочих подобрать себе тихую мышь. Ну а раз я ее делаю сам, то решил провести эксперимент и сделать такую мышь и опробовать ее в работе. Для этого щелкавшие левый и правый «микрики» заменил на мягкие и тихие, использовавшиеся для центральной кнопки (замечали, что центральная кнопка всегда щелкает тише?). Была создана специальная версия платы, куда и были смонтированы все три одинаковых «микрика».

Подобрал и купил для мыши партию позолоченных разъемов. Как обычно, в Китае. Не знаю как насчет «лучшего контакта», но с деревом гармонируют отлично.

Экранчик, прошивка

Увлекшись идеей разместить в мышке дисплей, начал его поиски среди сотен поставщиков. Требования были простые: жесткие габаритные ограничения и возможность хотя бы символьного отображения минимум восьми знакомест. Пока подбирал, узнал о дисплеях практически все. Они различаются по типам: символьные и графические, по технологии: TAB, COG, TFT, OLED, LCD, E-Paper и другие. Каждый тип или технология имеет еще массу разновидностей, размеров, цветов, подсветки, и пр. В общем, было в чем покопаться.

Перерыв половину интернета, выяснил, что нужный мне размер изготавливает всего одна фирма на всем белом свете. Все остальные варианты однозначно больше по габаритам. И даже найденный мной дисплей еле-еле помещался внутрь мыши. Как вариант рассматривался кастомный дисплей, который мне могли изготовить по моим требованиям, но это очень дорогой вариант для меня (около ста тысяч рублей). Для первой модели вполне подойдет графический дисплей с разрешением 128 на 64 пикселей, который я и выбрал.

Для того, чтобы разобраться в том, как реально выглядит и сочетается с моей мышью дисплей, мне пришлось заказать у производителей все разновидности этого дисплея. Что означают эти разновидности? Имя модели состоит из цифро-буквенных непроизносимых сочетаний типа FP12P629AU12. Все они компонуются из различных блоков и четко расшифровываются в спецификации. Например, приведенный пример может быть собран из блоков FP.12.P.629A.U12, где зашифрован тип, размер, вольтаж, контроллер, диапазон рабочих температур и прочая информация о модели. А последний блок самый хитрый. Он может иметь несколько десятков значений, каждое из которых означает ту или иную комбинацию из таких характеристик, как наличие и цвет подсветки, цвет фона, цвет символов, диапазон градусов, с которого четко читается информация. Вот как раз эти параметры мне были интересны.

В результате «для пробы» я заказал 18 различных модификаций. Производитель согласился, но сообщил, что минимальный заказ - 5 дисплеев для каждой модификации. Деваться было некуда, и мне пришлось согласиться, зная, что 90% уйдет в помойное ведро. И вот в один из пасмурных дней служба экспресс-доставки привезла мне домой огромную коробку, в которой можно жить бомжу средней комплекции. В коробе было 18 коробок поменьше, в каждой из которой вольготно размещались 5 дисплейчиков, надежно зафиксированных для дальней поездки в холодную Россию. Сопутствующей упаковки было столько, что теще хватило укрыть несколько грядок на зиму.

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

Но главная интрига заключалась в том, какую информацию можно показывать на экранчике? Мне предлагали разные идеи: температуру окружающего воздуха, индикацию прихода писем, что-то еще не очень оригинальное.

Мой ход мыслей шел по другому пути. Начнем с того, что есть два существенных ограничения на показ оперативной информации: наличие перед пользователем огромного и качественного источника любой информации (монитор) и необходимость переворачивать мышь для получения информации. Кроме того, экранчик маленький, разрешение небольшое, светодиод мешает нормальному чтению. Поэтому вывод у меня получился один: информация должна носить только развлекательный характер, прикладная ценность которой стремится к нулю, но при этом WOW!-эффект должен быть убойным.

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

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

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

Первый вариант был реализован в чисто текстовом ключе, для чего даже были разработаны несколько вариантов шрифтов.

Сделал прошивку, чтобы оценить как выглядит текст с использованием созданного шрифта на экранчике мышки. Ужасно выглядит, что сказать.

Теперь стало очевидным, что на экранчике нужна графика, а не набор символьной информации. Поэтому я привлек к работе дизайнера, и мы вместе подготовили три варианта графического исполнения, в итоге самым удачным был признан второй вариант.

Конечно, такой дизайн требовал большего разрешения, поэтому его пришлось адаптировать.

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

Все это было очень подозрительно. И точно, как в воду глядел. Переделали плату под модифицированный экранчик, спаяли, и тут выяснилось, что экранчик совсем тусклый. Как будто у устройства сели батарейки. И выяснилось это после долгой и кропотливой работы по поиску и отбору экранчиков, закупке пробной партии всех модификаций и их испытаний. Время, деньги, и так далее.

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

Все показывается, как и планировалось: пробег, скорость, количество кликов и прочее.

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

Но, как оказалось, не все так просто. Двое людей с мышами, где установлен один и тот же сенсор могут получать кардинально различающиеся результаты! Все дело в том, что разрешающая способность сенсора (чувствительность) весьма сильно зависит от поверхности, по которой катается мышь. Лучший результат получается, когда мышь катается по белой бумаге. Чуть хуже по дереву и ткани. По ламинату и пленке совсем плохо. Заявленная паспортная чувствительность достигается только на идеальных, с точки зрения сенсора, поверхностях.

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

Но совсем другое дело, если вы задумали считывать эти параметры непосредственно с мыши. Мышь на одной поверхности покажет результат пробега один метр, на другой - полтора. Скорость также будет «врать». И с этим надо что-то делать.

Для решений этой задачи пришлось вводить параметр «Дискретность (Sensitivity)», который позволяет индивидуально подобрать коэффициент для каждой поверхности. По-умолчанию он равен единице, что соответствует поверхности белой бумаги. Его можно в настройках как увеличивать, так и уменьшать. Его можно вообще не трогать, все будет прекрасно работать и так. Но для истинных перфекционистов в прилагаемой к мышке листовке будет дана таблица, из которой можно подобрать коэффициент к имеющейся поверхности и инструкция, как можно самостоятельно настроить мышь для показа точного пробега.

При разработке прошивки обнаружился еще один побочный эффект работы сенсора. Если взять мышку и просто помахать ею в воздухе, то показания пробега также будут изменяться. Это связано с тем, что сенсор определяет окружающее пространство как некую поверхность и также пытается получать значения смещения мыши. Поэтому можно наблюдать такой эффект: вы переворачиваете мышь, смотрите на параметры пробега и удивляетесь тому, что они прямо у вас на глазах меняются в большую сторону. Конечно, можно установить в мыши датчик угла наклона, отключающего сенсор на время ее переворота, но делать это только для описанной ситуации неразумно. Возможно, в следующей версии он и появится, но не сейчас. Ведь мышь поднимают только чтобы посмотреть на показатели, а 99,9% процентов времени она находится на поверхности и получает правильную информацию.

Кабель

Кабель решил делать максимально гибким, чтобы он не мешал движению мышки и был «невидимым» для кинематики. Ну не нравится лично мне «пружинный» кабель.

Порой кажется, что при создании изделия кабель - самая несущественная часть изделия. Чего проще - купить в магазине нужное количество кабеля и распаять его. Плевое дело. Но, увы, не у нас в России. Порой кажется, что у нас промышленность уже не приспособлена делать ничего сложнее чугунных утюгов. Попытки найти кабель вылились в трехнедельные поиски и перетряхивание ассортимента абсолютно всех производителей российской кабельной продукции. Выяснилось: наши стандарты не описывают кабель, подходящий к современным электронным устройствам. Например, микрофонный четырехжильный кабель с оплеткой КММ 4х0.12 мм2 имеет наружный диаметр 5 мм. Это очень много. Старые мыши и клавиатуры имеют кажущимся толстый кабель, внешний диаметр которого составляет всего 3,5 мм. Ближайший аналог в продаже был кабель немецкой фирмы Lapp Kabel, но и у него внешний диаметр как раз и составлял 3,5 мм. А теперь представьте еще и оплетку на таком кабеле. Представили? Я вам скажу, что подобный кабель я видел на сетевых шнурах для утюгов

Итак, выяснилось: в России такой кабель не купить. Точка. Ну что же, мы не привыкли отступать. Иду в производство и пробую заказать, благо в России еще кабель делают. А для этого определимся с моими требованиями. Итак, что мне нужно:
Жилы - медные, из плетеных проволок (для гибкости).
Количество жил - 4.
Экран - да.
Гибкость - максимальная.
Внешний диаметр кабеля - строго не более 3 мм.
Цвет - Pantone 4625 C.
Итог: пытался списаться, наверное, с десятком возможных производителей кабельной продукции, никому не интересно возиться с моим заказом. Даже не спрашивали, какой километраж мне нужен. Итог: в России такой кабель не купить и не произвести. Грустно. Но мы не привыкли отступать.

Иду на Alibaba.com. Нахожу первого попавшегося китайского производителя, пишу письмо и буквально через несколько часов получаю ответ: сделаем для вас любой кабель! Я в шоке. Кидаю ему спецификацию, денег на доставку, и через неделю получаю образец. Вот это да! А я почти три месяца потерял, пытаюсь патриотично разместить заказ в России. Оказалось, что китайцы совершенно спокойно могут сделать мне кабель с внешним диаметром 2,5 мм.

В итоге: я заказал в Китае 4 различных сэмпла. Сначала не устроила царапаемость и матовость внешней оболочки, затем не устроила гибкость кабеля, затем опять не устроила гибкость, и в конце концов остановился на последнем присланном семпле, который готов был заказать. Гибче они не могут. Кабель имеет память. В итоге случайно получил кабель с памятью, хотя хотел максимально гибкий как веревка

Заказал километр, через две недели кабель был у меня. Общее потраченное время: шесть месяцев.

Оплел свой километр кабеля. Получилось два варианта.

Примерно 10% кабеля ушло на отбраковку. Это начало бухт, где оплетка расплетается и станок еще не вошел в рабочий режим. И некоторые места, где по какой-то причине образовались петли и узлы нитей оплетки.

Если конец кабеля не заделать термоусадкой, то он в момент распушится, нити-то синтетические! Поэтому монтаж кабельной сборки затрудняется превентивной насадкой термоусадки.

Внешний диаметр кабеля с оплеткой получился 3,2 мм, т.е. оплетка прибавила к диаметру кабеля 0,7 мм. Кажется немного, но у обычной мыши кабель идет в основном с диаметром 3,5 мм, и он в эпоху беспроводных мышей кажется толстым и тяжелым. В последнее время не бюджетные мыши начали комплектоваться кабелями диаметром 3 мм, и они уже не так мешают при работе, их практически незаметно. А вот кабель клавиатуры может быть с внешним диаметром 4 мм. И даже больше. Но для клавиатуры это не важно.

Пластиковые детали

Как бы я ни хотел сделать корпусные части мыши полностью из дерева, но без пластмассы здесь не обойтись. Нужны ножки, ось для колесика, саппорт для оси и стеклышко для дисплея.

Поэтому пришлось заказывать у китайцев пресс-форму.

После каждой тестовой отливки китайцы присылали мне десяток сэмплов, которые я тестировал на моей мышке.

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

Получилась вот такая деталька.

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

Не буду останавливаться на пластиковых деталях, эта технология сейчас лидирует, и ничего нового и интересного я здесь рассказать вам не смогу. Скажу лишь о ножках, для которых я долго подбирал материал с пониженным трением, после чего проводил испытания и «забеги» мышей с целью определения победителя с минимальным трением.

Обработка и покрытие

Вначале идет тщательная работа с удалением ворса, ошкуриванием и полировкой поверхности.

Передо мной стояла сложная задача. Нужно было стабилизировать дерево, чтобы геометрия мышки не менялась в зависимости от влажности, и защитить дерево от работы в агрессивной среде (пот и жир от руки).

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

Чтобы было понятно: дерево насквозь пропитано порами, в которых содержится либо воздух, либо масло самого дерева (если дерево каучуконос). Наша задача - насколько возможно заполнить поры своим маслом, которое потом должно полимеризоваться и защитить дерево.

Чтобы не растягивать повествование, скажу что испробовал множество масел: льняное, тиковое, тунговое, вазелиновое, датское. Каждое масло имеет свой характер. Например, на тиковое масло очень плохо наносится воск, а льняное масло очень долго полимеризуется. Поэтому приходится в него вводить катализатор - сиккатив.

В итоге я разработал две технологии. Первая - технология вакуумной пропитки дерева. Работает она так: создаю в среде с маслом и деревом вакуум. Из пор начинает выходить воздух. После снятия вакуума поры заполняются маслом. Как плюс - дерево хорошо стабилизируется. Как минус - оно сильно темнеет. Смотрится хорошо, но на любителя.

Вторая технология - это поверхностное покрытие маслом. Масло наносится 1-2 или больше раз нетканой салфеткой.

Наносим карнаубский воск.

И растираем муслиновым кругом.

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

Если оценивать трудозатраты обработки, то ручного труда на одну мышь получается около четырех часов.

Сборка

Дальше идет операция монтажа, но перед ней нужно еще удалить следы обработки из технологических отверстий. Затем с помощью специальной ленты 3М юстирую и наклеиваю ножки (корпус может повести на доли миллиметра, и это сразу будет заметно: он будет шататься как хромоногая табуретка). Затем прокладываю кабель, монтирую плату, саппорт, устанавливаю колесико и также, при необходимости, юстирую кнопки (не должно быть дребезга) и силу нажатия. Эта операция также может занимать до четырех часов.

Со времен изобретения компьютерный манипулятор типа «лазерная мышь» прошел огромный эволюционный путь от деревянной коробки на двух колесах к устройству с электромагнитным шариком и роликами внутри. Затем механизм был заменен на оптический сенсор и светодиод. И в завершении, последний был замещен более точным и менее энергоемким лазером.

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

Устройство лазерной мыши

Лазерная мышка своим устройством напоминает оптическую конструкцию. Основной рабочий элемент состоит из трех частей:

  • миниатюрный ;
  • оптический сенсор в форме плоской матрицы;
  • сигнальный микропроцессор, способный распознавать изменения образов.

Лазерная мышь отличается от оптической по следующим характеристикам:

  • Точность. Лазерное устройство способно выдавать до 20 раз больше данных на участке сканирования поверхности.
  • Имеет низкое энергопотребление и позволяет беречь батарейки при беспроводных соединениях.
  • Не светится в темноте. Может быть, это не столь важно, но иногда дополнительная подсветка позволяет судить о рабочем состоянии устройства.
  • Благодаря свойствам лазера позволяет работать даже на зеркальной поверхности.

Основной и главный недостаток лазерных мышей - это их дороговизна. Альтернативное решение при подсчете выгоды от приобретения беспроводного варианта устройства может быть принято с расчетом экономии на батарейках.

Особенности при выборе мыши

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

  • Материалы корпуса. Здесь могут быть использованы пластик, металл, резина, или варианты комбинирования данных материалов.
  • Тип мыши. Проводная или беспроводная - решение заключается в удобстве облуживания дополнительного питания устройства.
  • Разрешение сенсора. В среднем разрешение сенсора в 2000 dpi должно обеспечить комфортное пользование мышью. Для игровых компьютеров можно приобрести устройство с более высокими характеристиками данного параметра.
  • Количество кнопок. Тут выбор зависит от пользователя. Если он намеревается вместе с мышью использовать клавиатуру, то можно выбирать поменьше кнопок. А если предполагается, что лазерная мышь может полностью заменить другие то существуют 7-8 кнопочные варианты.
  • Возможность выбора режима работы сенсора. Позволяет работать на своих скоростных режимах в различных приложениях или быстро перенастроиться в случае смены пользователя компьютера.
  • Наличие дополнительного программного обеспечения. Современные устройства-манипуляторы в основном не нуждаются в установке драйверов. Однако некоторые производители вместе со своим продуктом предлагают набор программ и утилит для облегчения настроек работы мыши или дополнительные бонусы.
  • Интерфейс подключения к компьютеру и наличие переходников. В настоящее время оборудование ориентировано в основном на подключение через USB 2.0. Но могут попадаться более дешевые, устаревшие модели с другими вариантами штекерного соединения.

Кроме технических характеристик, лазерная мышь может отличаться размером, дизайном, эргономикой. Здесь лучшим вариантом будет опробовать ее на месте, почувствовать, как она располагается в ладони, свободно ли двигается, все ли кнопки легкодоступны, как проходят двойные щелчки или как вращается колесико. В качестве примера высококачественных моделей лазерных мышей можно отметить A4Tech X-750F, OClick 765L, Logitech MX400, Genius Ergo555, Genius Ergo525 и Lexma AM530(MPE).

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

Кто тебя выдумал…

Привычные для нас сегодня оптические мыши ведут свою родословную с 1999 года, когда в массовой продаже появились первые экземпляры таких манипуляторов от Microsoft, а через некоторое время и от других производителей. До появления этих мышей, да и еще долго после этого, большинство массовых компьютерных «грызунов» были оптомеханическими (перемещения манипулятора отслеживались оптической системой, связанной с механической частью - двумя роликами, отвечавшими за отслеживание перемещения мыши вдоль осей × и Y; эти ролики, в свою очередь, вращались от шарика, перекатывающегося при перемещении мыши пользователем). Хотя встречались и чисто оптические модели мышей, требовавшие для своей работы специального коврика. Впрочем, такие устройства встречались не часто, да и сама идея развития подобных манипуляторов постепенно сошла на нет.

«Вид» знакомых нам нынче массовых оптических мышек, базирующихся на общих принципах работы, был «выведен» в исследовательских лабораториях всемирно известной корпорации Hewlett-Packard. Точнее, в ее подразделении Agilent Technologies, которое только сравнительно недавно полностью выделилось в структуре корпорации НР в отдельную компанию. На сегодняшний день Agilent Technologies, Inc. - монополист на рынке оптических сенсоров для мышей, никакие другие компании такие сенсоры не разрабатывают, кто бы и что не говорил вам об эксклюзивных технологиях IntelliEye или MX Optical Engine . Впрочем, предприимчивые китайцы уже научились «клонировать» сенсоры Agilent Technologies, поэтому, покупая недорогую оптическую мышь, вы вполне можете стать владельцем «левого» сенсора.

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

Как «видят» компьютерные мыши

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

Итак, «зрение» оптическая компьютерная мышь получает благодаря следующему процессу. С помощью светодиода, и системы фокусирующих его свет линз, под мышью подсвечивается участок поверхности. Отраженный от этой поверхности свет, в свою очередь, собирается другой линзой и попадает на приемный сенсор микросхемы - процессора обработки изображений. Этот чип, в свою очередь, делает снимки поверхности под мышью с высокой частотой (кГц). Причем микросхема (назовем ее оптический сенсор) не только делает снимки, но сама же их и обрабатывает, так как содержит две ключевых части: систему получения изображения Image Acquisition System (IAS) и интегрированный DSP процессор обработки снимков.

На основании анализа череды последовательных снимков (представляющих собой квадратную матрицу из пикселей разной яркости), интегрированный DSP процессор высчитывает результирующие показатели, свидетельствующие о направлении перемещения мыши вдоль осей × и Y, и передает результаты своей работы вовне по последовательному порту.

Если мы посмотрим на блок-схему одного из оптических сенсоров, то увидим, что микросхема состоит из нескольких блоков, а именно:

  • основной блок, это, конечно же, Image Processor - процессор обработки изображений (DSP) со встроенным приемником светового сигнала (IAS);
  • Voltage Regulator And Power Control - блок регулировки вольтажа и контроля энергопотребления (в этот блок подается питание и к нему же подсоединен дополнительный внешний фильтр напряжения);
  • Oscillator - на этот блок чипа подается внешний сигнал с задающего кварцевого генератора, частота входящего сигнала порядка пары десятков МГц;
  • Led Cоntrоl - это блок управления светодиодом, с помощью которого подсвечивается поверхность под мышью;
  • Serial Port - блок передающий данные о направлении перемещения мыши вовне микросхемы.

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

Нужно уточнить, что информацию о перемещении мыши микросхема оптического сенсора передает через Serial Port не напрямую в компьютер. Данные поступают к еще одной микросхеме-контроллеру, установленной в мыши. Эта вторая «главная» микросхема в устройстве отвечает за реакцию на нажатие кнопок мыши, вращение колеса прокрутки и т.д. Данный чип, в том числе, уже непосредственно передает в ПК информацию о направлении перемещения мыши, конвертируя данные, поступающие с оптического сенсора, в передаваемые по интерфейсам PS/2 или USB сигналы. А уже компьютер, используя драйвер мыши, на основании поступившей по этим интерфейсам информации, перемещает курсор-указатель по экрану монитора.

Именно по причине наличия этой «второй» микросхемы-контроллера, точнее благодаря разным типам таких микросхем, довольно заметно отличались между собой уже первые модели оптических мышей. Если о дорогих устройствах от Microsoft и Logitech слишком плохо отозваться я не могу (хотя и они не были вовсе «безгрешны»), то масса появившихся вслед за ними недорогих манипуляторов вела себя не вполне адекватно. При движении этих мышей по обычным коврикам курсоры на экране совершали странные кульбиты, скакали чуть ли не на пол Рабочего стола, а иногда… иногда они даже отправлялись в самостоятельное путешествие по экрану, когда пользователь совершенно не трогал мышь. Доходило и до того, что мышь могла запросто выводить компьютер из режима ожидания, ошибочно регистрируя перемещение, когда манипулятор на самом деле никто не трогал.

Кстати, если вы до сих пор боретесь с подобной проблемой, то она решается одним махом вот так: выбираем Мой Компьютер > Свойства > Оборудование > Диспетчер устройств > выбираем установленную мышь > заходим в ее «Свойства» > в появившемся окне переходим на закладку «Управление электропитанием» и снимаем галочку с пункта «Разрешить устройству вывод компьютера из ждущего режима» (рис. 4). После этого мышь уже не сможет вывести компьютер из режима ожидания ни под каким предлогом, даже если вы будете пинать ее ногами:)

Итак, причина столь разительного отличия в поведении оптических мышей была вовсе не в «плохих» или «хороших» установленных сенсорах, как до сих пор думают многие. Не верьте, это не более чем бытующий миф. Или фантастика, если вам так больше нравится:) В ведущие себя совершенно по-разному мыши часто устанавливались совершенно одинаковые микросхемы оптических сенсоров (благо, моделей этих чипов было не так уж много, как мы увидим далее). Однако вот, благодаря несовершенным чипам контроллеров, устанавливаемых в оптические мыши, мы имели возможность сильно поругать первые поколения оптических грызунов.

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

В собранном виде оптический элемент слежения выглядит как показано выше. Схема работы оптики этой системы представлена ниже.

Оптимальное расстояние от элемента Lens до отражающей поверхности под мышью должно попадать в диапазон от 2.3 до 2.5 мм. Это рекомендации производителя сенсоров. Вот вам и первая причина, почему оптические мыши плохо себя чувствуют «ползая» по оргстеклу на столе, всевозможным «полупрозрачным» коврикам и т. п. И не стоит клеить на оптические мыши «толстые» ножки, когда отваливаются или стираются старые. Мышь из-за чрезмерного «возвышения» над поверхностью может впадать в состояние ступора, когда «расшевелить» курсор после пребывания мыши в состоянии покоя становится довольно проблематично. Это не теоретические измышления, это личный опыт:)

Кстати, о проблеме долговечности оптических мышей. Помниться, некоторые их производители утверждали что, дескать «они будут служить вечно». Да надежность оптической системы слежения высока, она не идет ни в какое сравнение с оптомеханической. В то же время в оптических мышах остается много чисто механических элементов, подверженных износу точно так же, как и при господстве старой доброй «оптомеханики». Например, у моей старой оптической мыши стерлись и поотваливались ножки, сломалось колесо прокрутки (дважды, в последний раз безвозвратно:(), перетерся провод в соединительном кабеле, с манипулятора слезло покрытие корпуса… зато вот оптический сенсор нормально работает, как ни в чем не бывало. Исходя из этого, мы смело можем констатировать, что слухи о якобы впечатляющей долговечности оптических мышей не нашли своего подтверждения на практике. Да и зачем, скажите на милость, оптическим мышам «жить» слишком долго? Ведь на рынке постоянно появляются новые, более совершенные модели, созданные на новой элементной базе. Они заведомо совершеннее и удобнее в использовании. Прогресс, знаете ли, штука непрерывная. Каким он был в области эволюции интересующих нас оптических сенсоров, давайте сейчас и посмотрим.

Из истории мышиного зрения

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

Но давайте обо всем по порядку. Первыми массово выпускаемыми оптическими сенсорами стали микросхемы HDNS-2000 (рис. 8). Эти сенсоры имели разрешение 400 cpi (counts per inch), то бишь точек (пикселей) на дюйм, и были рассчитаны на максимальную скорость перемещения мыши в 12 дюймов/с (около 30 см/с) при частоте осуществления снимков оптическим сенсором в 1500 кадров за секунду. Допустимое (с сохранением стабильной работы сенсора) ускорение при перемещении мыши «в рывке» для чипа HDNS-2000 - не более 0.15 g (примерно 1.5 м/с 2).

Затем на рынке появились микросхемы оптических сенсоров ADNS-2610 и ADNS-2620 . Оптический сенсор ADNS-2620 уже поддерживал программируемую частоту «съемки» поверхности под мышью, с частотой в 1500 либо 2300 снимков/с. Каждый снимок делался с разрешением 18х18 пикселей. Для сенсора максимальная рабочая скорость перемещения по прежнему была ограничена 12 дюймами в секунду, зато ограничение по допустимому ускорению возросло до 0.25 g, при частоте «фотографирования» поверхности в 1500 кадров/с. Данный чип (ADNS-2620) также имел всего 8 ножек, что позволило существенно сократить его размеры по сравнению с микросхемой ADNS-2610 (16 контактов), внешне похожей на HDNS-2000. В Agilent Technologies, Inc. задались целью «минимизировать» свои микросхемы, желая сделать последние компактнее, экономнее в энергопотреблении, а потому и удобнее для установки в «мобильные» и беспроводные манипуляторы.

Микросхема ADNS-2610 хотя и являлась «большим» аналогом 2620-й, но была лишена поддержки «продвинутого» режима 2300 снимков/с. Кроме того, этот вариант требовал 5В питания, тогда как чип ADNS-2620 обходился всего 3.3 В.

Вышедший вскоре чип ADNS-2051 представлял собой гораздо более мощное решение, чем микросхемы HDNS-2000 или ADNS-2610, хотя внешне (упаковкой) был также на них похож. Этот сенсор уже позволял программируемо управлять «разрешением» оптического датчика, изменяя таковое с 400 до 800 сpi. Вариант микросхемы также допускал регулировку частоты снимков поверхности, причем позволял менять ее в очень широком диапазоне: 500, 1000,1500, 2000 или 2300 снимков/с. А вот величина этих самых снимков составляла всего 16х16 пикселей. При 1500 снимках/с предельно допустимое ускорение мыши при «рывке» составляло по прежнему 0.15 g, максимально возможная скорость перемещения - 14 дюймов/с (т. е. 35.5 см/с). Данный чип был рассчитан на напряжение питания 5 В.

Сенсор ADNS-2030 разрабатывался для беспроводных устройств, а потому имел малое энергопотребление, требуя всего 3.3 В питания. Чип также поддерживал энергосберегающие функции, например функцию снижения потребления энергии при нахождении мыши в состоянии покоя (power conservation mode during times of no movement), переход в режим «сна», в том числе при подключении мыши по USB интерфейсу, и т.д.. Мышь, впрочем, могла работать и не в энергосберегающем режиме: значение «1» в бите Sleep одного из регистров чипа заставляло сенсор «всегда бодрствовать», а значение по умолчанию «0» соответствовало режиму работы микросхемы, когда по прошествии одной секунды, если мышь не перемещалась (точнее после получения 1500 совершенно одинаковых снимков поверхности) сенсор, напару с мышью, переходил в режим энергосбережения. Что касается остальных ключевых характеристик сенсора, то они не отличались от таковых у ADNS-2051: тот же 16-и контактный корпус, скорость перемещения до 14 дюймов/с при максимальном ускорении 0.15 g, программируемое разрешение 400 и 800 cpi соответственно, частоты осуществления снимков могли быть точно такими же, как и у вышерассмотренного варианта микросхемы.

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

В итоге и курсор на экране перемещался не так, как требовалось. Указатель на экране даже становился способен на экспромт:) - на непредсказуемые перемещения в произвольном направлении. Кроме того, легко догадаться, что при слишком быстром перемещении мыши сенсор мог вообще утратить всякую «связь» между несколькими последующими снимками поверхности. Что порождало еще одну проблему: курсор при слишком резком перемещении мыши либо дергался на одном месте, либо происходили вообще «сверхъестественные»:) явления, например, с быстрым вращением окружающего мира в игрушках. Было совершенно ясно, что для человеческой руки ограничений в 12-14 дюймов/с по предельной скорости перемещения мыши явно мало. Также не вызывало сомнений, что 0.24 с (почти четверть секунды), отведенные для разгона мыши от 0 до 35.5 см/с (14 дюймов/с - предельная скорость) это очень большой промежуток времени, человек способен двигать кистью значительно быстрее. И потому при резких движениях мыши в динамичных игровых приложениях с оптическим манипулятором может придтись несладко…

Понимали это и в Agilent Technologies. Разработчики осознавали, что характеристики сенсоров надо кардинально улучшать. В своих изысканиях они придерживались простой, но правильной аксиомы: чем больше снимков в секунду сделает сенсор, тем меньше вероятность того, что он потеряет «след» перемещения мыши во время совершения пользователем компьютера резких телодвижений:)

Хотя, как мы видим из вышеизложенного, оптические сенсоры и развивались, постоянно выпускались новые решения, однако развитие в этой области можно смело назвать «очень постепенным». По большому счету, кардинальных изменений в свойствах сенсоров так и не происходило. Но техническому прогрессу в любой области порой свойственны резкие скачки. Случился такой «прорыв» и в области создания оптических сенсоров для мышей. Появление оптического сенсора ADNS-3060 можно считать действительно революционным!

Лучший из

Оптический сенсор ADNS-3060 , по сравнению со своими «предками», обладает поистине впечатляющим набором характеристик. Использование этой микросхемы, упакованной в корпус с 20-ю контактами, обеспечивает оптическим мышам невиданные ранее возможности. Допустимая максимальная скорость перемещения манипулятора выросла до 40 дюймов/с (то есть почти в 3 раза!), т.е. достигла «знаковой» скорости в 1 м/с. Это уже очень хорошо - вряд ли хоть один пользователь двигает мышь с превышающей данное ограничение скоростью столь часто, чтобы постоянно чувствовать дискомфорт от использования оптического манипулятора, в том числе это касается и игровых приложений. Допустимое же ускорение выросло, страшно сказать, во сто раз (!), и достигло величины 15 g (почти 150 м/с 2). Теперь на разгон мыши с 0 до предельных 1 м/с пользователю отводится 7 сотых секунды - думаю, теперь очень немногие сумеют превзойти это ограничение, да и то, вероятно, в мечтах:) Программируемая скорость осуществления снимков поверхности оптическим сенсором у новой модели чипа превышает 6400 кадров/с, т.е. «бьет» предыдущий «рекорд» почти в три раза. Причем чип ADNS-3060 может сам осуществлять подстройку частоты следования снимков для достижения наиболее оптимальных параметров работы, в зависимости от поверхности, над которой перемещается мышь. «Разрешение» оптического сенсора по прежнему может составлять 400 или 800 cpi. Давайте на примере микросхемы ADNS-3060 рассмотрим общие принципы работы именно чипов оптических сенсоров.

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

Но вникнем чуть глубже в особенности работы сенсора. Блок-схема чипа ADNS-3060 представлена выше. Как видим, принципиально его структура не изменилась, по сравнению с далекими «предками». 3.3 В питание к сенсору поступает через блок Voltage Regulator And Power Control, на этот же блок возложена функции фильтрации напряжения, для чего используется подключение к внешнему конденсатору. Поступающий с внешнего кварцевого резонатора в блок Oscillator сигнал(номинальная частота которого 24 МГц, для предыдущих моделей микросхем использовались более низкочастотные задающие генераторы) служит для синхронизации всех вычислительных процессов, протекающих внутри микросхемы оптического сенсора. Например, частота снимков оптического сенсора привязана к частоте этого внешнего генератора (кстати, на последний наложены не весьма жесткие ограничения по допустимым отклонениям от номинальной частоты - до +/- 1 МГц). В зависимости от значения, занесенного по определенному адресу (регистру) памяти чипа, возможны следующие рабочие частоты осуществления снимков сенсором ADNS-3060.

Значение регистра, шестнадцатеричное Десятичное значение Частота снимков сенсора, кадров/с
OE7E 3710 6469
12C0 4800 5000
1F40 8000 3000
2EE0 12000 2000
3E80 16000 1500
BB80 48000 500

Как нетрудно догадаться, исходя из данных в таблице, определение частоты снимков сенсора осуществляется по простой формуле: Частота кадров = (Задающая частота генератора (24 МГц)/Значение регистра отвечающего за частоту кадров).

Осуществляемые сенсором ADNS-3060 снимки поверхности (кадры) имеют разрешение 30х30 и представляют собой все ту же матрицу пикселей, цвет каждого из которых закодирован 8-ю битами, т.е. одним байтом (соответствует 256 градациям серого для каждого пикселя). Таким образом, каждый поступающий в DSP процессор кадр (фрейм) представляет собой последовательность из 900 байт данных. Но «хитрый» процессор не обрабатывает эти 900 байт кадра сразу по поступлении, он ждет, пока в соответствующем буфере (памяти) накопится 1536 байт сведений о пикселях (то есть добавится информация еще о 2/3 последующего кадра). И только после этого чип приступает к анализу информации о перемещении манипулятора, путем сравнения изменений в последовательных снимках поверхности.

С разрешением 400 или 800 пикселей на дюйм их осуществлять, указывается в бите RES регистров памяти микроконтроллера. Нулевое значение этого бита соответствует 400 cpi, а логическая единица в RES переводит сенсор в режим 800 cpi.

После того как интегрированный DSP процессор обработает данные снимков, он вычисляет относительные значения смещения манипулятора вдоль осей × и Y, занося конкретные данные об этом в память микросхемы ADNS-3060. В свою очередь микросхема внешнего контроллера (мыши) через Serial Port может «черпать» эти сведения из памяти оптического сенсора с частой примерно раз в миллисекунду. Заметьте, только внешний микроконтроллер может инициализировать передачу таких данных, сам оптический сенсор никогда не инициирует такую передачу. Поэтому вопрос оперативности (частоты) слежения за перемещением мыши во многом лежит на «плечах» микросхемы внешнего контроллера. Данные от оптического сенсора передаются пакетами по 56 бит.

Ну а блок Led Cотtrоl, которым оборудован сенсор, ответственен за управление диодом подсветки - путем изменения значения бита 6 (LED_MODE) по адресу 0x0a микропроцессор оптосенсора может переводить светодиод в два режима работы: логический «0» соответствует состоянию «диод всегда включен», логическая «1» переводит диод в режим «включен только при необходимости». Это важно, скажем, при работе беспроводных мышей, так как позволяет экономить заряд их автономных источников питания. Кроме того, сам диод может иметь несколько режимов яркости свечения.

На этом, собственно, все с базовыми принципами работы оптического сенсора. Что еще можно добавить? Рекомендуемая рабочая температура микросхемы ADNS-3060, впрочем как и всех остальных чипов этого рода, - от 0 0С до +40 0С. Хотя сохранение рабочих свойств своих чипов Agilent Technologies гарантирует в диапазоне температур от -40 до +85 °С.

Лазерное будущее?

Недавно сеть наполнили хвалебные статьи о мыши Logitech MX1000 Laser Cordless Mouse, в которой для подсветки поверхности под мышью использовался инфракрасный лазер. Обещалась чуть ли не революция в сфере оптических мышей. Увы, лично попользовавшись этой мышью, я убедился, что революции не произошло. Но речь не об этом.

Я не разбирал мышь Logitech MX1000 (не имел возможности), но уверен, что за «новой революционной лазерной технологией» стоит наш старый знакомый - сенсор ADNS-3060. Ибо, по имеющимся у меня сведениям, характеристики сенсора этой мыши ничем не отличаются от таковых у, скажем, модели Logitech МХ510 . Вся «шумиха» возникла вокруг утверждения на сайте компании Logitech о том, что с помощью лазерной системы оптического слежения выявляется в двадцать раз (!) больше деталей, чем с помощью светодиодной технологии. На этой почве даже некоторые уважаемые сайты опубликовали фотографии неких поверхностей, дескать, как видят их обычные светодиодные и лазерные мыши:)

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

Давайте прикинем, для получения в 20 раз более детализированной картинки, нужно, извините за тавтологию, в двадцать раз больше деталей, передать которые могут только дополнительные пиксели изображения, и ни что иное. Известно, что Logitech MX 1000 Laser Cordless Mouse делает снимки 30х30 пикселей и имеет предельное разрешение 800 cpi. Следовательно, ни о каком двадцатикратном росте детализации снимков речи быть не может. Где же собака порылась:), и не являются ли подобные утверждения вообще голословными? Давайте попробуем разобраться, что послужило причиной появления подобного рода информации.

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

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

Какими будут оптические сенсоры ближайшего будущего? Сказать трудно. Вероятно, они перейдут таки на лазерную подсветку, а в Сети уже ходят слухи о разрабатываемом сенсоре с «разрешением» 1600 cpi. Нам остается только ждать.

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

Подготовка и немного теории

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

Погуглив информацию по этой теме и разобрав старую PS/2 мышку Logitech, я увидел знакомую по статьям из интернета картину.

Не очень сложная схема «мышей первого поколения», оптический сенсор по центру и чип интерфейса PS/2 чуть выше. Попавшийся мне оптический сенсор является аналогом «популярных» моделей ADNS2610/ADNS2620/PAN3101. Я думаю, они и их аналоги были массово произведены на одном и том же китайском заводе, получив на выходе разную маркировку. Документация на него нашлась очень легко, даже вместе с различными примерами кода.

Документация гласит, что этот сенсор до 1500 раз в секунду получает изображение поверхности размером 18x18 точек (разрешение 400cpi), запоминает его и с помощью алгоритмов сравнения изображений вычисляет смещение по координатам Х и Y, относительно предыдущей позиции.

Реализация

Для «общения с сенсором» я использовал популярную вычислительную платформу Arduino, а припаяться решил прямо к ножкам чипа.

Подключаем 5V и GND к соответствующим выходам Arduino, а ножки сенсора SDIO и SCLK к цифровым пинам 8 и 9.

Для получения смещения по координатам нужно прочитать значение регистра чипа по адресу 0x02 (X) и 0x03 (Y), а для дампа картинки нужно, сначала записать значение 0x2A по адресу 0x08, а потом 18x18 раз его прочитать оттуда же. Это и будет последнее «запомненное» значение матрицы яркости изображения с оптического сенсора.

Как я реализовал это на Arduino можно посмотреть тут: http://pastebin.com/YpRGbzAS (всего ~100 строк кода).

А для получения и отображения картинки была написана программа на Processing.

Результат

После небольшого «допиливания» программы для своего проекта, я смог получать картинку прямо с оптического сенсора и производить над ней все необходимые вычисления.

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

Если начать приподнимать мышку над поверхностью даже на пару миллиметров, четкость сразу пропадает.

Если вы вдруг захотите повторить это дома, для нахождения мышки с аналогичным сенсором рекомендую искать старые девайсы с интерфейсом PS/2.

Заключение

Хотя получаемое изображение и не очень большое, этого вполне хватило для решения моей задачи (сканнер штрих кода). Получилось очень даже экономично и быстро (мышка за ~100р + Arduino + пару дней на написание кода).

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