Предисловие
Путешествуя по просторам интернета я набрел на одну малоинтересную категорию игрушек — «кликеры». Особенно меня «порадовал» Office Clicker. Глупость конечно несусветная, но что-то в этом есть. Можно написать какой-нибудь скрипт, который будет играть вместо меня, но это слишком банально. Я решил сделать хардвэрный «кликер», но не просто хардверный, а теплый-ламповый «кликер»! Интересно? Прошу под кат!
Теплая «ламповая» схемотехника
Схема мне пришла в голову весьма нетривиальная, в основу ее легла автомобильная лампочка дальнего света (которую я далее гордо именую «лампой»):
Номиналы деталей:
- R1 = 10 КОм (многооборотный);
- R2 = 5 Ом (5 Вт);
- R3 = 470 ОМ (0,25 Вт);
- R4 = 100 Ом (0,25 Вт);
- C1 = 47 мкФ (25 В).
Принцип работы схемы следующий:
- «Лампа» остыла (остывает);
- Напряжение U1 < U2;
- Компаратор подает отпирающий сигнал на транзистор T1;
- Транзистор T1 открыт;
- Контакты реле замкнуты;
- Через «лампу» начинает течь ток => она нагревается;
- Сопротивление «лампы» увеличивается;
- Напряжение U1 растет и приближается к U2;
- Когда U1 > U2, компаратор перестает подавать сигнал на T1;
- Транзистор T1 закрыт;
- Контакты реле разомкнуты;
- U1 > U2, но постепенно U1 снижается;
- GOTO 1.
Частота генерируемого сигнала зависит от:
- постоянной времени t=R5*C1;
- времени разогрева (и остывания) «лампы».
Изменяя напряжение U2 мы меняем время разогрева «лампы», соответственно — чем больше U2 тем ниже будет частота.
Резистор R4 и стабилитрон D1 (на напряжение 3.3В) используются для формирования управляющего сигнала для следующего узла — платы Arduino Duo.
Интерфейс
Как вы уже поняли, в качестве интерфейсной платы между «ламповым» реле и компьютером я выбрал плату Arduino Duo.
Принцип работы очень прост:
- когда в схеме «кликера» транзистор V1 закрыт, на Arduino поступает управляющий сигнал 3.3В, когда транзистор открыт — 0В;
- Arduino интерпретирует 3.3В, как руководство к нажатию ЛКМ;
- Arduino интерпретирует 0В, как руководство отпустить ЛКМ.
Вот программа для Arduino, которую я написал по этому поводу:
#define VACUUM_LINE 13
void setup()
{
pinMode(VACUUM_LINE, INPUT_PULLUP);
Mouse.begin();
}
void loop()
{
if (digitalRead(VACUUM_LINE) == HIGH)
{
Mouse.press();
delay(10);
}
if (digitalRead(VACUUM_LINE) == LOW)
{
Mouse.release();
delay(10);
}
}
Тестируем
Вместо тысячи слов, предлагаю посмотреть одно видео:
Спасибо за внимание! Надеюсь моя статья помогла улучшить ваше настроение!
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Комментарии (42)
nafikovr
03.06.2016 11:51+3Странно. в схеме стоит триод, а на фото обычная автомобильная галогенка (H4?).
geovas333
03.06.2016 11:56Вы верно подметили! Изначально я хотел собрать действительно ламповый генератор, но дома нашлась только галогенка H4. В схеме я оставил триод скорее для «шутки юмора». Однако, с настоящей радиолампой все также будет работать.
impetus
03.06.2016 17:58Всю статью ждал, что лампа с двумя нитями (ближний/дальний свет) будет использоваться как триод.
geovas333
03.06.2016 18:06Пробовал — не взлетело. Возможно для работы ее в качестве триода требуется высокое напряжение. В любом случае тема «ламповой лампочки» меня сильно зацепила и просто так я ее уже не оставлю!
Scorry
03.06.2016 20:33Не сможет. Максимум, как диод. Это же очевидно.
Ну и покрытия эмитирующего нет.geovas333
03.06.2016 20:33Scorry
05.06.2016 00:10Уверен, конечно. По вашей ссылке доработка, причём не до триода, а до плохо экранированного диода. Не поверю, что вы этого не увидели.
geovas333
05.06.2016 08:46Вообще статья называется poor mans triode. Нить накала можно использовать, как катод, фольгу, как сетку, а отгоревшую спираль, как анод. Если судить по схеме — оно так и получается.
voidptr0
03.06.2016 11:51Интересно, правда, я сам уже отказался от использования макетных плат. При достаточно большом количестве соединений настает полный апокалипсис — пропуск соединений, кучи проводков, которые начинают мешать пайке и т.п. Поэтому делаю платы сразу ЛУТом.
Вопрос по схеме, так как я не знаток ламповой техники, если лампу заменить проволочным сопротивлением работоспособность устройства сохраниться?geovas333
03.06.2016 11:53Макетку использовал, т.к. было лень травить плату для столь «нужного» устройства.
Проволоку можно конечно, но я бы рекомендовал лампочку — греться будет меньше.
zorge_van_daar
03.06.2016 11:59Кстати, в большинстве кликеров есть 2 режима зарабатывания денег, кликами и пассивный. Идея в том, что через некоторое время прокачки доля от кликов не значительна. А вот в некоторых других играх очень нужная штука. В РПГ часто можно воспользоваться слабоумностью AI и встать в такое место, где тебя не достанет его огонь, а ты по нему попадаешь — так можно завалить очень жирных тварей (тебе не по уровню).
А по опросу — нужен вариант «у меня умная мышь с макросами на доп кнопках». Это скорее софт но не яжпрограммист.
И эй, «я взрослый человек и мне не до игрушек» — а если я их разрабатываю)geovas333
03.06.2016 12:07И эй, «я взрослый человек и мне не до игрушек» — а если я их разрабатываю)
Значит вы тот человек, который в жизни сделал верный выбор! Если человек не интересуется играми, значит ему либо:
- они не нравятся (говорят так бывает)
- на них нет времени (а этому я могу только посочувствовать)
LynXzp
03.06.2016 12:56+1> они не нравятся (говорят так бывает)
Читал комментарии чтобы узнать, неужели кому-то старше 12 нравятся кликеры. Похоже что да…
P.S. Очень люблю игры, особенно TD. Но игры с лутом и кликеры — это бессмысленное издевательство над игроком.zorge_van_daar
03.06.2016 13:44+1Зря вы так. Если подумать, то окажется что кликеры это концентрированные игры.
Кто-то играет в игры (в мультиплеерные как правило) для получения удовольствия от осознавания собственного превосходства над другими игроками.
Кто-то ради интереса вызываемого сюжетом (тут сомнительно, с одной стороны проще книги, но игры дают более более разнообразные ощущения — ведь смотрят же кино по книге, хотя книга лучше).
А кто-то от ощущения развития (всем нравится становиться сильнее или богаче), и от факта выполнения заданий (всем нравится чего-то добиваться, факт выполнения дела).
Вот на последнюю группу (каждый человет входит в каждую из групп, кто-то больше, а кто-то меньше) и рассчитаны кликеры. Ты получаешь минимальный загруз мозгов сложностью геймплея. И максимум удовольствия — там и быстрый рост и ачивы и тп поощрения.
Более того, такие незамысловатые игры, которые дарят удовольствие при минимуме затрат времени или участии (тут товарищ даже кликать ленится, просто наблюдает за тем как становится круче) подходят скорее взрослой аудитории. В доте и батлфилдах процент школьников повыше всяких ферм и кликеров.zorge_van_daar
03.06.2016 14:01+2Я тут, кстати, игровую консоль придумал. Просто кнопка, счетчик, баночка вещества действующего на дофаминовые рецепторы и игла. Просто жмешь кучу раз на кнопку и получаешь порцию гормона удовольствия в кровь. И чтоб количество нажатий для впрыска росло экспоненциально. И размер порции рос.
Думаю кликеры это софтварная реализация этого устройства)
TsukinoMai
03.06.2016 17:18+1Следует добавить, что в части кликеров удовольствие ещё приходит от оптимизации процесса «зарабатывания» местной валюты. Для игры, которая можно сказать породила этот жанр (Cookie Cliсker если что), в своё время на официальном форуме эта оптимизация шла со спорами, математическими расчётами, графиками и написанием симуляторов для сбора статистики об эффективности различных стратегий.
impetus
03.06.2016 18:01я люблю (~шутеры), но без стрельбы — просто бродить по уровням — часто они с большой фантазией и такой любовью к мелочам сделаны! Как по музею бродить… Но если занят стрельбой и убеганием — то не до них.
geovas333
03.06.2016 14:55Да собственно, понравится может что угодно, у меня это от настроения зависит, иногда хочется хардкора, а иногда простоты.
AllexIn
03.06.2016 16:24Я знаю человека достаточно хорошо влезшего по карьерной лестнице в геймдеве и при этом не играющего в игры.
pomkaster
03.06.2016 16:45Я программист, но свой велосипед писать было лень — https://sourceforge.net/projects/orphamielautoclicker/
redmanmale
03.06.2016 17:38Вообще говоря, основная стратегия это покупка предметов внутри игры, которые «кликают».
А ручками прокликать надо только немного в самом начале.
Гик-вариант игры: https://dripstat.com/game/TsukinoMai
03.06.2016 17:51Dripstat — он скорее с лёгким запахом гиковости. И рекламным вкусом.
Вообще из idle-игр гиков может скорее заинтерисовать http://factoryidle.com — хоть и не кликер, но зато огромное пространство для оптимизации.
Ну и следует отметить, что хватает игр, в которых ручное кликанье — довольно мощный инструмент (хоть, временами, и на весьма ограниченных промежутках времени).
impulse
03.06.2016 20:05Можно обойтись одним реле, катушку питания которого подключить через него же.
geovas333
03.06.2016 20:07А если добавить конденсатор, можно еще и частоту установить, какую захочется. Но с лампочкой все же наряднее вышло.
xxvy
06.06.2016 08:59+1Именно так я и делал лет так 17 назад.
Из мышки вывел два провода + конденсатор + Релюшка РЭС-15 (какая была).
устройство «скликивало» с экрана периодически появлявшееся окошко триальной программки обучения нейросети, которая запускалась на ночь.
reticular
03.06.2016 20:05+1пару лет назад собирал вот такой кликер для планшета:
plus.google.com/photos/102988292090344009758/albums/6038966213960707105/6038966217202234674?pid=6038966217202234674&oid=102988292090344009758
tormozedison
03.06.2016 20:26Вы потрогали галогенку пальцем, оставив на колбе жир, а потом её включили. Она может от этого лопнуть.
geovas333
03.06.2016 20:32Может конечно, но не под напряжением 2 Вольта. Слишком маленькая температура при этом получается.
tormozedison
03.06.2016 20:35Ну, при двух вольтах да. И ещё я бы вместо Ардуино плату от мышки использовал. Но это дело вкуса.
А я в девяностых мечтал о джойстике для Денди с одной кнопкой «Пройти всю игру».geovas333
03.06.2016 20:38+1Тоже думал достать из шкафа старую мышку, но она оказалась так «глубоко», что я передумал.
А я в 90-х мечтал о кнопке save! очень не хватало…
Gendalph
03.06.2016 20:42+1Я выбрал "свой вариант" и теперь просто обязан заявить — я слишком ленивая задница чтобы еще кликать мышкой!
TsukinoMai
03.06.2016 21:54+1К слову, упомянутый в статье «Офис кликер» — хреновый клон Pony Clicker (https://blackhole12.github.io/PonyClicker/ponyclicker.html), который сам в свою очередь среднего качества клон Cookie Clicker (http://orteil.dashnet.org/cookieclicker/). Они даже не потрудились переименовать div-ы при копировании — если заглянуть, то можно увидеть ponyboard, ponies, ponyspin…
tormozedison
04.06.2016 00:28Аудиофилы иногда делают «ламповые клоки» — ламповые тактовые генераторы для проигрывателей компакт-дисков. Звук от этого никак не меняется, зато вещь необычная. Для MP3-плеера тоже ничто не мешает такое сделать.
Foolleren
А где вариант встроить вибромоторчик в мышку?
geovas333
Пожалуй этот вариант вполне холодный и транзисторный, как вы полагаете?
Foolleren
Этот вариант ещё теплее и ламповее самих ламп.
geovas333
Хм, ну что же. Добавил в опрос «свой вариант».