Оглавление:
- Запасы
- Шаг 1. Как это работает
- Шаг 2: Подключение Micro: bit к Raspberry Pi через Bluetooth
- Шаг 3: Настройка Bluetooth на Raspberry Pi
- Шаг 4: запустите код на Raspberry Pi
- Шаг 5: будущее
Видео: Мышь, управляемая жестами, с использованием Micro: bit: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:50
ВСТУПЛЕНИЕ
Проект представляет собой управляемую жестами мышь в форме перчатки со встроенным в нее micro: bit. Это проект, вдохновленный моей ранней идеей, которая возникла у меня как разработчика встраиваемых систем. Я всегда хочу иметь доступ к беспроводной мыши и клавиатуре для взаимодействия с любым микропроцессором, который я захочу использовать. Мышь необходима, если я запускаю ОС на микропроцессоре. Наличие беспроводной мыши и клавиатуры неоднократно оказывалось спасением, и в этом отношении я был очень заинтересован в разработке носимого устройства, которое можно было бы использовать в качестве мыши и, возможно, клавиатуры.
В этом руководстве я собираюсь поделиться шагами и процедурой того, как я использовал micro: bit с некоторым кодом Python, чтобы создать мышь, управляемую жестами, закрепленную в перчатке.
Запасы
1 микро: бит с батареей
1 перчатка для крепления micro: bit к
1 компьютер с поддержкой Bluetooth, Linux (здесь используется Raspberry Pi)
ПК для программирования micro: bit и открытия сеанса VNC для Raspberry Pi
Шаг 1. Как это работает
Шаг 2: Подключение Micro: bit к Raspberry Pi через Bluetooth
1. При запуске я показываю последовательность светодиодов в форме «b *» и инициализирую акселерометр bluetooth, кнопку, светодиод и службы температуры.
2. В случае подключения bluetooth на светодиодном экране отображается буква «C», указывающая, что micro: bit установил подключение bluetooth.
3. В случае отключения Bluetooth на светодиодном экране отображается буква «D», что указывает на то, что бит micro: bit потерял соединение Bluetooth, и его необходимо повторно подключить.
4. В настройках проекта выберите режим «Без сопряжения». Веб-сайт micro: bit рекомендует сопряжение «Just Works», но с последним сопряжение всегда не удается. По какой-то необъяснимой причине он работает с первым.
Шаг 3: Настройка Bluetooth на Raspberry Pi
1. Установите пакет bluezero с помощью "sudo pip3 install bluezero"
2. Откройте командную строку Bluetooth, набрав «bluetoothctl». Новое приглашение должно выглядеть так:
$ [bluetooth] #
3. Переведите micro: bit в режим сканирования, удерживая кнопки A и B и нажав кнопку сброса. Подождите, пока на светодиодном экране не появится символ Bluetooth, затем отпустите все кнопки. На bluetooth-терминале raspberry pi введите "сканирование на". Как только micro: bit станет видимым в списке новых устройств, введите «сканирование выключено» и обратите внимание на адрес устройства micro: bit как «yy: yy: yy: yy: yy: yy».
4. Выполните сопряжение и подключитесь к micro: bit, набрав «pair yy: yy: yy: yy: yy: yy».
5. Чтобы убедиться, что сопряжение сработало, введите «устройства» и проверьте, отображается ли micro: bit в списке устройств. В случае успешного подключения светодиодный экран на micro: bit должен измениться на «C». Если нет, сбросьте micro: bit и просто попробуйте снова выполнить сопряжение на терминале bluetoothctl на Raspberry pi.
Шаг 4: запустите код на Raspberry Pi
1. Запустите код на Raspberry Pi, набрав «python3 mouse_control.py», который прилагается в конце этого шага:
2. На терминале должно появиться сообщение «Подключено». Нажмите обе кнопки A и B на секунду, чтобы «включить» мышь. Теперь должно появиться сообщение «Переместите курсор».
3. Чтобы «выключить» мышь, снова нажмите обе кнопки вместе. Запрос «Продолжить или выйти?» появляется. Нажмите c, чтобы продолжить с шага 2, или просто введите, чтобы выйти из программы.
4. Если удерживать мышь в перевернутом положении (светодиодный экран направлен вниз), программа выдает ошибку, предлагая пользователю правильно удерживать мышь, прежде чем перейти к шагу 2.
5. Для одиночного щелчка, удерживая мышь параллельно земле (чтобы курсор перестал двигаться), нажмите только кнопку A. Для двойного щелчка нажмите только кнопку B.
6. Для ознакомления с кодом обратитесь к приложенному файлу, который достаточно хорошо прокомментирован.
7. Bluetooth-соединение является довольно спорадическим и может довольно часто прерываться, особенно если поблизости используются какие-либо другие устройства, подключенные по Bluetooth. Если это произойдет, повторный запуск кода должен сработать. Если это тоже не удается, откройте командное окно bluetoothctl и снова выполните сопряжение с битом micro: bit.
Шаг 5: будущее
1. Элементы управления мышью можно в значительной степени настроить. Если вместо алгоритма линейного ускорения используется экспоненциальное ускорение, это может обеспечить еще больший контроль.
2. Поскольку соединение Bluetooth является довольно спорадическим, может быть добавлено событие для обнаружения сбоев подключения, которое будет иметь ответ повторного установления соединения при каждом сбое.
3. Можно добавить некоторые жесты клавиатуры, например, внезапный рывок может вызвать выключение, или заранее определенный жест, при обнаружении, может вызвать некоторые другие часто используемые команды / нажатия клавиш.
Рекомендуемые:
Мышь, управляемая жестами: 6 шагов (с изображениями)
Мышь, управляемая жестами: вы смотрите фильм с друзьями на ноутбуке, и один из парней получает звонок. Ааа .. тебе нужно встать с места, чтобы поставить фильм на паузу. Вы проводите презентацию на проекторе, и вам нужно переключаться между приложениями. Вы должны переехать
Theremoose - компьютерная мышь, управляемая терменвоксом: 6 шагов (с изображениями)
Theremoose - компьютерная мышь, управляемая терменвоксом: этот проект был разработан в сотрудничестве с Рэнди Гленном, обязательно посмотрите его здесь: https://www.instructables.com/member/rglenn/ Около недели назад я участвовал в хакатоне для ужасные идеи здесь, в Торонто (stupidhacktoronto.com). Это
Багги-летучая мышь LEGO®, управляемая телефоном своими руками: 5 шагов
Самодельный робот LEGO® Bat Buggy с телефонным управлением: с помощью некоторых деталей, напечатанных на 3D-принтере, и нескольких дешевых компонентов вы можете создавать небольшие автомобили LEGO, управляемые телефоном. Для проекта я буду использовать: микроконтроллер ESP32 (Adafruit Feather ESP32 или его эквивалент TTGO) 2 мотор-редуктора N20 1
DTMF и роботизированная инвалидная коляска, управляемая жестами: 7 шагов (с изображениями)
DTMF и роботизированная инвалидная коляска, управляемая жестами: в этом мире многие люди являются инвалидами. Их жизнь вращается вокруг колес. В этом проекте представлен подход к управлению движением инвалидной коляски с помощью распознавания жестов рук и DTMF смартфона
Беспроводная роботизированная рука, управляемая жестами и голосом: 7 шагов (с изображениями)
Беспроводная роботизированная рука, управляемая жестом и голосом: В основном это был проект нашего колледжа, и из-за нехватки времени на его отправку мы забыли сфотографировать некоторые шаги. Мы также разработали код, с помощью которого можно управлять этой роботизированной рукой, используя жест и голос одновременно, но из-за того, что я