В гостях у Самоделкина! » Электроника » Arduino » Кнопка «Пора с работы»

Кнопка «Пора с работы»



Предложенная автором Instructables под ником fmtuve самоделка представляет собой кнопку из крышки от бутылки, которую нужно нажимать по окончании рабочего дня. Она имитирует нажатие сочетания клавиш Cmd+Q, которое в Mac OS X выполняет ту же функцию, какую в Linux и Windows выполняет всем известное сочетание Alt+F4. Корпус устройства - 3D-печатный, электроника выполнена на Arduino Pro Micro. И похоже, мастер поставил производство таких приспособлений на поток:



Ниже показаны все компоненты самоделки, из них три детали, расположенные справа - 3D-печатные, STL-файлы для их печати лежат в этом ZIP-архиве.



Напечатав детали корпуса, мастер припаивает гребёнки к Arduino необычным способом - со стороны компонентов:



Помещает в эту выемку в дне корпуса:



Получается как на КДПВ в правом верхнем углу:



Перевернув среднюю деталь корпуса, помещает в неё кнопку, разрезает пополам перемычку типа "дюпон" и припаивает к контактам кнопки, соединения изолирует термоучадочной трубкой:



Переворачивает среднюю деталь вместе с кнопкой обратно, соединяет её с дном, подключает кнопку к выводам GND и A8 Arduino. Подтягивающий резистор здесь бы не помешал, но и без него заработает.

Кнопка «Пора с работы»


Затем мастер добавляет к кнопке верхнюю 3D-печатную деталь -толкатель:



Пишет скетч:



Текст его следующий:

#include <HID.h>
#include <Keyboard.h>

// connected PIN8
const int switch_pin        = 8;

int button_state            = 0;
int previous_button_state   = HIGH;
long last_debounce_time     = 0;
const long debounce_delay   = 50;

void setup() 
{
  // We use internal pullup registor 'cause the switch directly connected.
  pinMode(switch_pin,INPUT_PULLUP); 
  digitalWrite(switch_pin, HIGH);
  
  Keyboard.begin();
}


void loop() 
{
  button_state = digitalRead(switch_pin);
  if ((button_state != previous_button_state) && (button_state == HIGH)) 
  {
    if ((millis() - last_debounce_time) > debounce_delay) 
    {
      // Exit Program (CMD+Q in mac) & Have a nice day!
      // Use KEY_LEFT_ALT + KEY_F4 for PC 
      Keyboard.press(KEY_LEFT_GUI);
      Keyboard.press('q');
      delay(100);
      Keyboard.releaseAll(); // This is important after every Keyboard.press it will continue to be pressed
      last_debounce_time = millis();
    }
  }
  previous_button_state = button_state;
}


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




А сам принимается за работу над небольшим рекламным плакатом:



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

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

Устройство автоматического ввода паролей в компьютер

6.3
Идея
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
7.3
Описание
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
6.9
Исполнение
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Итоговая оценка: 6.83 из 10 (голосов: 12 / История оценок)

Добавить комментарий

    • smilesmilesxaxaokdontknowyahoonea
      bossscratchfoolyesyes-yesaggressivesecret
      sorrydancedance2dance3pardonhelpdrinks
      stopfriendsgoodgoodgoodwhistleswoontongue
      smokeclappingcraydeclarederisivedon-t_mentiondownload
      heatirefullaugh1mdameetingmoskingnegative
      not_ipopcornpunishreadscarescaressearch
      tauntthank_youthisto_clueumnikacuteagree
      badbeeeblack_eyeblum3blushboastboredom
      censoredpleasantrysecret2threatenvictoryyusun_bespectacled
      shokrespektlolprevedwelcomekrutoyya_za
      ya_dobryihelperne_huliganne_othodifludbanclose
8 комментариев
  1. Korolev
    Если я правильно понял, весь этот гемор исключительно только для того, чтобы выключить компьютер? Ещё и USB порт занимает!
    Возможно, он убедит и вас повторить эту конструкцию
    Очень полезная штуковина, как только я без неё обходился? scratch
  2. BENDER39
    Alt+F4 чтоб активную программу закрыть, пусть он себе в голову такую кнопку приделает, пользы в разы больше будет
    1. Korolev
      BENDER39
      Alt+F4 чтоб активную программу закрыть
      Если коротко нажать кнопку включения компьютера, запустится стандартная процедура "Завершение работы", и компьютер нормально выключается. smile
      1. BENDER39
        Я думал это только я знаю smile но здесь написано, что это чудо вместо ALT+F4
    2. Тарас
      Свою полечи, раз берёшься вместо эксперимента судить о том, чего не знаешь. Alt+f4 – универсальная команда «закройся», закрывающая после того, как по очереди закрыты все прилады, и саму систему.
      1. BENDER39
        Я не знаю, чего там она у тебя закрывет, у меня после закрытия всего открытого, Alt+F4 вызывает окно завершения работы, повторное нажатие его же и закрывает
        И так можно нажимать до конца света
  3. BENDER39
    [quote=Korolev]Если коротко нажать кнопку включения компьютера, запустится стандартная процедура "Завершение работы", и компьютер нормально выключается.
    Я думал это только я знаю smile но в статье написано именно про ALT+F4
    1. Korolev
      BENDER39
      Я думал это только я знаю
      Теперь нас двое! friends

Привет, Гость!


Зарегистрируйтесь

Или войдите на сайт, если уже зарегистрированы...

Войти

Добавьте самоделку

Добавьте тему

Онлайн чат

Опрос
А Вы знаете, что на сайте оплачиваются отчеты о создании самоделок?

Последние комментарии

Все комментарии
Новые самоделки на почту

Введите электронную почту и получайте письма с новыми самоделками. Не более одного письма в день.