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



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

Все компоненты от seeedstudio.com:
1. Плата Xadow Main Board
2. Акселерометр Xadow 3-Axis Accelerometer
3. Вибромотор Xadow Vibrator Motor (или Grove - Vibrator Motor)
4. Экран Xadow OLED
5. ИК-излучател Grove - Infrared Emitter
6. ИК-приемник Grove - Infrared Receiver
Шаг 2: Соединяем элементы
Чтобы все это нормально функционировало, вам нужно будет проделать некоторые «монтажные работы». Принципиальная схема соединения компонентов представлена ниже.

Вывод TX излучателя должен быть соединен с выводом MOSI (здесь MOSI используется в качестве нормального цифрового выхода), а вывод RX приемника с выводом A5 (здесь A5 используется в качестве нормального цифрового входа). Физическое соединение показано на фото ниже. В данном случае задействован Grove-Vibrator вместо Xadow Vibration Motor, но это не имеет никакого значения.

Шаг 3: Дизайн
Аппаратно наше устройство готово, но это все еще не браслет. Чтобы оно было таковым соедините все, как продемонстрировано на рисунках ниже.

Шаг 4: Программная начинка
Вся программа делится на две функциональные части: алгоритм распознавания жестов и алгоритм приема/передачи инфракрасных сигналов.
1. Алгоритм распознавания жестов
Этот алгоритм достаточно прост и в то же время эффективен. Его можно взять с гитхаба. Для того, чтобы повысить скорость распознавания, были определены 16 типов движения, представленные на графике ниже. Вы можете к каждому прибору, которым хотите управлять, «привязать» по жесту.

2. Прием и передача ИК-сигналов
Итак, вывод A5 у нас служит в качестве приемника ИК-сигналов, а вывод MOSI – передатчика ИК-сигналов. Библиотека IRSendRev была улучшена, и вы ее можете также найти на гитхабе.
Всю программу можно найти на гитхабе здесь.
Шаг 5: тестируем и играем
На примере ниже будет показано, как использовать волшебный браслет для управления бытовым прибором.
1. Включение
Включите браслет, OLED-экран покажет «Gesture&Walker»

2. Выход из сна
Помашите рукой, чтобы браслет вышел из режима сна. Вы можете установить время махания рукой самостоятельно, но по умолчанию оно равно 3 секундам.
3. Выбор режимов
После пробуждения вибромотор будет вибрировать в течение 3 секунд, что сигнализирует о входе в меню выбора режима. На OLED-дисплее буде показано «Switch mode», и будет предложено выбрать два режима 1. Gesture и 2. IR Record. Первый используется для распознавания жестов, а второй для хранения ИК-сигналов для управления приборами. Выбор осуществляется поворотом руки влево или вправо. По умолчанию поворот руки влево означает выбор первого режима, вправо – второго.

4. Рисуем в воздухе жест
Если вы выбрали режим Gesture, то можете двигать рукой для того, чтобы нарисовать жест. Браслет будет ожидать, пока ваша рука не остановится. Далее он рассчитает и выведет на OLED-дисплей результат, соответствующий движениям вашей руки.

5. Отправка ИК-сигнала
Если выполненное движение соответствует записанному в памяти жесту, то браслет прочитает соответствующий этому жесту сигнал и отправит его с помощью ИК-передатчика. Поэтому, чтобы устройство смогло его принять, направляйте браслет на это устройство.
Программа на данный момент имеет не полный функционал, поэтому в дальнейшем она, возможно, будет дорабатываться.
Перевод © digitrode.ru