
Иногда сидишь на подоконнике, смотришь в окно и думаешь: «Что бы такого сделать, чтобы не скучать, пока мой человек смотрит свой телевизор?» Пару раз я пытался намекнуть на то, что мне хочется поиграть — залез на стол, свалил кружку, пробежался по клавиатуре (случайно удалил что-то важное, но это же мелочи!). Но, увы, двуногие не понимают нас, котов, так, как нам хотелось бы. И вот однажды я решил: хватит это терпеть! Пора взять дело в свои когти!
Содержание статьи / Table Of Contents
↑ Мяу-предисловие
Я потихоньку изучал то, что мой человек делает за компьютером, и понял одну простую вещь — чем больше кнопок и проводов, тем веселее! Поэтому я с легкостью освоил паяльник (конечно, без усов остаться не хотелось бы, так что осторожность на первом месте!) и собрал лазерное устройство, которое сам могу включать и гоняться за точкой, когда мне вздумается! Долго думал, как назвать своё изобретение… решил не мудрить, назвал «LaserCat» — звучит круто, правда?Теперь у меня есть свой личный лазер! Но это не просто обычная лазерная игрушка — я могу управлять им через смартфон моего человека! Я, конечно, даю команды, а человек исполняет (кто тут босс, в конце концов?) и лазер сам двигается в любую сторону. Я гоняюсь за этой точкой, как за мышкой, и не надо больше ждать, когда кто-то найдёт на меня время.
Теперь я самый счастливый кот! Мой человек в восторге от того, что я могу «развлекать» себя сам, а я… мурлыкаю от удовольствия, что мои инженерные навыки подняли игру на новый уровень.
Ну что, друзья, хотите узнать, как собрать такой же «LaserCat» для своего котика? Держите свои паяльники горячими — сейчас я вам всё объясню!
↑ Материалы и модули
Вот что вам понадобится:1. Лазерный модуль — Можно взять такой же, как у указок, крепить его мы будем на сервопривод.
2. Микроконтроллер — PIC12F683.
3. Сервопривод — миниатюрные SG90 (2 шт.)
4. Bluetooth-модуль — HC-06 (скорость 9600).
5. Модуль зарядки аккумулятора — типа TP4056
6. Аккумулятор — типа 18650
7. Приложение на смартфон — LaserCat.apk (См. раздел «Файлы».)
↑ Схема и плата лазерной игрушки для кота
Теперь по делу. Как мы это всё собрали? Я, конечно, больше наблюдал со стороны, мурлыча и давая советы (ну, кто в доме главный, понятно же).
Схема в комментариях не нуждается, к МК подключаем 2 сервопривода, Bluetooth модуль и подключаем аккумулятор с модулем зарядки.
После подачи питания устройство ждет управляющие команды от смартфона, передача сигнала идет по протоколу UART.
Все элементы размещены на печатной плате.

↑ Механика игрушки
Конструкция механики движения лазера может быть любой, какую вы сможете сделать.Сервопривод оси X закреплен неподвижно, его ось двигается вверх-вниз. На его ось крепится сервопривод Y, ось которого двигается влево-вправо и к которой прикреплен лазер.


↑ Управляющая программа
Управляющая программа для смартфона написана с использованием бесплатного фреймворка Kivy на Python.Порядок работы с программой:
1. Произвести сопряжение смартфона с Bluetooth устройством, у меня это HC-06,
2. Запустить программу LaserCat, нажать кнопку «Выбрать устройство» и выбрать HC-06.
3. Нажать кнопку «Соединиться с устройством», в строке состояния появится надпись «Соединение с HC-06 установлено».
4. Нажать кнопку «Включить» для начала передачи данных в игрушку.

Существует 2 режима работы «Mode1» и «Mode2».
«Mode1» — лазер движется по траектории типа «восьмерка». «Mode2» — движение по оси Х прекращается и работает только ось Y.

При нажатии на кнопку «Настройка» можно выбрать скорость движения лазера «Минимальная», «Средняя» и «Большая». Так же, здесь можно выбрать величины отклонения лазера по X и Y (Y Max, Y Min и X Max, X Min). Единственное, нужно запомнить, что средним положением является величина 150. От него лазер отклоняется в одну сторону до 100 и в другую сторону до 200 единиц. Обратите внимание, что ось X начинается со среднего значения 150, это сделано чтобы лазер не светил себе под основание.
Изменяя эти значения можно менять площадь по которому движется лазерное пятно.

Располагать устройство лучше всего на высоте не более 1 метра от пола (табурет, тумбочка, стол). Для предотвращения сброса устройства с высоты особо любопытными особями предусмотрены ушки для крепления к массивному основанию, например куску ДСП.
Интересно получается, если положить устройство на бок и направить луч лазера на стену.
↑ Фото готового устройства

Когда всё было собрано, я произвел тест-драйв. Лазер летал по комнате, я за ним — полный восторг! Теперь, как только я захочу поиграть — беру смартфон (ну, хорошо, ладно, зову человека) и начинаю самую настоящую охоту!
↑ Видео лазерной игрушки для кота в действии
Теперь вы тоже можете собрать своего собственного «LaserCat-а» для ваших котов! Пусть их жизнь будет полна приключений и охоты на красную точку — как у меня, великого кото-инженера Кузи!
↑ Файлы и ссылки
🎁Схема, печатная плата и прошивка - lc.7z 35.18 Kb ⇣ 7Файл apk под Android для управления «LaserCat» достаточно большой, поэтому его можно скачать по ссылке:
LaserCat apk
Kivy: Cross-platform Python Framework for GUI apps Development
Спасибо за внимание!