Сломалась у меня однажды компьютерная мышка, и прежде чем ее выбросить, подумал: а не сделать с ней что-нибудь эдакое? Взгляд упал на велотренажер, стоявший рядом, и идея родилась сама собой.
Предыстория: большинство велотренажеров имеют герконовый датчик вращения педалей. При каждом полном обороте датчик замыкается один раз. Велотренажер у меня вот такой:
![15.05 КБ](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/6eb/0a7/0c2/6eb0a70c285fdf780a0c195e272137cf.jpg)
Компьютер на руле съемный, и от датчика к нему идет провод, заканчивающийся стандартным 3,5 мм моно-миниджеком. Вот и подумал, а что если заставить вращением педалей имитировать нажатие кнопки мыши, подключить мышь к компьютеру и написать какой-нибудь софт (игрушку или что-то еще), чтобы сделать кручение педалей более интересным занятием?
Процедура простая:
1. Берем двужильный провод и припаиваем его к 3,5 мм моно-разъему типа «мама»:
![29.75 КБ](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/345/9ee/1ab/3459ee1aba27557b54b41d759ee8bff9.jpg)
2. Разбираем мышку, Отпаиваем микрик, использующийся для средней кнопки мышки (ролика) и припаиваем туда наш провод с разъемом на конце. Также можно выпаять светодиод, т.к. он не нужен:
![28.46 КБ](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/99c/75d/741/99c75d741d00b9e914556a196fd28520.jpg)
3. Дело сделано. Собираем мышку:
![30.34 КБ](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/ead/45a/f1a/ead45af1ab5101889c776e0199057786.jpg)
4. Снимаем компьютер с велотренажера, подключаем мышку к проводу, идущему к геркону и закрепляем мышку (я воспользовался обычной резинкой):
![13.17 КБ](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/3b1/7ac/cc4/3b17accc4034747d0088e188579efcca.jpg)
Аппаратная часть (звучит-то как серьезно!) готова. Осталось дело за софтом. На скорую руку написал простенькую «игрушку»:
![4.80 КБ](https://habrastorage.org/r/w1560/getpro/geektimes/post_images/220/74c/eba/22074ceba7dd74fec9c9159b1abdc100.png)
На основании находится качающаяся «доска», на которой лежит «шарик». Если не крутить педали, то доска сама собой начинает наклоняться вправо, и шарик может с нее съехать. Цель — держать доску в равновесии, подобрав и строго удерживая определенный ритм педалирования. Казалось бы проще не придумаешь, но на деле все оказывается не так просто, т.к. велотренажер обладает определенной инерцией, и быстро педали под нужный ритм не подстроишь, да и удерживать частоту непросто. В общем, получилось весьма забавно. Сам не заметил, как прокрутил на тренажере педали целых полчаса в весьма интенсивном темпе.
На основе подобного простейшего интерфейса можно придумать массу других «велопрограмм». Например:
Под педали мы задействовали среднюю кнопку мыши, но у нас остались две кнопки и колесо прокрутки. С таким набором легко организовать менюподобный интерфейс выбора/настройки параметров приложения, и даже осуществлять ввод данных. Левая кнопка мыши работает как клавиша «назад» («отмена»), правая — как клавиша «вперед» («применить»), а колесо мыши может использоваться для изменения позиции в меню/списке. Т.е. мышка здесь является самодостаточным устройством ввода (ах, да, и педали!).
Кстати, если кото-то заинтересуется созданием велопрограмм, с радостью помогу дизайном, UI, велотестированием. :)
Предыстория: большинство велотренажеров имеют герконовый датчик вращения педалей. При каждом полном обороте датчик замыкается один раз. Велотренажер у меня вот такой:
![15.05 КБ](https://habrastorage.org/getpro/geektimes/post_images/6eb/0a7/0c2/6eb0a70c285fdf780a0c195e272137cf.jpg)
Компьютер на руле съемный, и от датчика к нему идет провод, заканчивающийся стандартным 3,5 мм моно-миниджеком. Вот и подумал, а что если заставить вращением педалей имитировать нажатие кнопки мыши, подключить мышь к компьютеру и написать какой-нибудь софт (игрушку или что-то еще), чтобы сделать кручение педалей более интересным занятием?
Процедура простая:
1. Берем двужильный провод и припаиваем его к 3,5 мм моно-разъему типа «мама»:
![29.75 КБ](https://habrastorage.org/getpro/geektimes/post_images/345/9ee/1ab/3459ee1aba27557b54b41d759ee8bff9.jpg)
2. Разбираем мышку, Отпаиваем микрик, использующийся для средней кнопки мышки (ролика) и припаиваем туда наш провод с разъемом на конце. Также можно выпаять светодиод, т.к. он не нужен:
![28.46 КБ](https://habrastorage.org/getpro/geektimes/post_images/99c/75d/741/99c75d741d00b9e914556a196fd28520.jpg)
3. Дело сделано. Собираем мышку:
![30.34 КБ](https://habrastorage.org/getpro/geektimes/post_images/ead/45a/f1a/ead45af1ab5101889c776e0199057786.jpg)
4. Снимаем компьютер с велотренажера, подключаем мышку к проводу, идущему к геркону и закрепляем мышку (я воспользовался обычной резинкой):
![13.17 КБ](https://habrastorage.org/getpro/geektimes/post_images/3b1/7ac/cc4/3b17accc4034747d0088e188579efcca.jpg)
Аппаратная часть (звучит-то как серьезно!) готова. Осталось дело за софтом. На скорую руку написал простенькую «игрушку»:
![4.80 КБ](https://habrastorage.org/getpro/geektimes/post_images/220/74c/eba/22074ceba7dd74fec9c9159b1abdc100.png)
На основании находится качающаяся «доска», на которой лежит «шарик». Если не крутить педали, то доска сама собой начинает наклоняться вправо, и шарик может с нее съехать. Цель — держать доску в равновесии, подобрав и строго удерживая определенный ритм педалирования. Казалось бы проще не придумаешь, но на деле все оказывается не так просто, т.к. велотренажер обладает определенной инерцией, и быстро педали под нужный ритм не подстроишь, да и удерживать частоту непросто. В общем, получилось весьма забавно. Сам не заметил, как прокрутил на тренажере педали целых полчаса в весьма интенсивном темпе.
Что дальше?
На основе подобного простейшего интерфейса можно придумать массу других «велопрограмм». Например:
- Программа учета и статистики. Каждый член семьи заходит под своим именем в программу, садится на велотренажер и крутит педали. Программа подсчитывает количество сделанных оборотов педалями. Можно организовывать небольшие соревнования между членами семьи, смотреть статистику использования велотренажера за день/месяц/год. Поощрять самых активных («за месяц накрутишь 50 тысяч оборотов, с меня поход в ресторан»). :) Самое приятное, что всю эту статистику можно совместить с любой другой «велопрограммой», т.е. собирать ее в фоновом режиме.
- Компьютерные игры, близкие по духу к процедуре кручения педалей. Типа Ugh, Balloon Fight, Helicopter Maze) и т.д. Принцип прост: крутишь педали интенсивнее — взлетаешь выше или едешь быстрее; сбрасываешь темп педалирования — опускаешься ниже. В игре можно также задействовать левую/правую кнопку мыши или колесо прокрутки для управления направлением движения героя.
- Виртуальные велопоездки. Представьте, что вы в Google Earth рисуете себе реальный маршрут (например, от дома до работы, или по МКАД :), или Route 66, или по Великой Китайской Стене, или даже вдоль всего экватора — все что душа пожелает, а затем катитесь по этому маршруту, сидя на велотренажере. При этом на мониторе отображается ваше текущее виртуальное положение на карте, статистика, сбоку могут отображаться фотографии окрестностей, взятые с Panoramio / Flickr, и т.д. Естественно, программа должна запоминать текущую позицию на пути между сессиями. Зато через месяц-два вы с гордостью сможете хвастаться перед друзьями, что вы уже проехали на велосипеде от Москвы до Берлина и теперь движетесь в направлении Ла-Манша. На этом можно построить что-то типа социального сервиса с обменом треками, общей статистикой. В общем, идей можно накидать вагон и маленькую тележку.
Управление «велопрограммами» с помощью мышки
Под педали мы задействовали среднюю кнопку мыши, но у нас остались две кнопки и колесо прокрутки. С таким набором легко организовать менюподобный интерфейс выбора/настройки параметров приложения, и даже осуществлять ввод данных. Левая кнопка мыши работает как клавиша «назад» («отмена»), правая — как клавиша «вперед» («применить»), а колесо мыши может использоваться для изменения позиции в меню/списке. Т.е. мышка здесь является самодостаточным устройством ввода (ах, да, и педали!).
Пути улучшения конструкции
- Во-первых, само собой напрашивается использовать Bluetooth- или радиомышку вместо проводной, чтобы не тянуть провод к компьютеру.
- Во-вторых, в идеале не отключать штатный компьютер (который меряет пульс и все такое), а сделать так, чтобы мышка подключалась в разрез между герконом и компьютером, и крепить ее более удобным способом.
- Ну а в идеале бы сделать так, чтобы производители велотренажеров сами предоставляли подобный интерфейс в своих компьютерах. Цена вопроса — плюс 100 рублей к стоимости тренажера, а удовольствия может быть несоизмеримо больше.
Кстати, если кото-то заинтересуется созданием велопрограмм, с радостью помогу дизайном, UI, велотестированием. :)