Pull to refresh

Мышь-робот или еще одна игрушка для кота

Доброго времени суток, уважаемые хаброжители!

У всех нас иногда возникает потребность смастерить что-нибудь бесполезное, но для души крайне приятное. Вот и на меня сошло вдохновение после прочтения данной статьи. Однако такой проект показался если и не очень сложным, то по крайней мере чересчур затратным и захотелось сделать что-то попроще. В заголовке громко сказано «мышь-робот», однако речь пойдет про разработку простейшей игрушки на базе контроллера Attiny13. Кому интересно — добро пожаловать под кат.

Как это выглядит

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



Прошу прощения за качество фотографий — к сожалению, нет возможности сделать лучше.

Как это работает

Основная задумка не очень оригинальна, но вполне имеет право на жизнь: котик видит игрушку, нападает на нее, а игрушка реагирует на удар жалобным писком и пытается скрыться.

В качестве качестве мозга игрушки выступает миниатюрный во всех смыслах контроллер Attiny13 с 1кб памяти в 8-выводном DIP-корпусе.
Благодаря корпусу упрощается отладка, но количество ног и памяти заставляет думать о периферии наперед.

В виду заявленной простоты конечного устройства, для определения момента удара я выбрал аналоговый акселерометр ADXL335. Модуль с данной микросхемой и обвязкой был заказан на aliexpress и успешно доставлен Почтой России за каких-то полтора месяца.


Модуль акселерометра ADXL335

Данный акселерометр изменяет уровень напряжения на трех своих выводах (соответствующим осям в декартовой системе координат) в зависимости от положения в пространстве. Таким образом, три ножки нашего контроллера уже заняты, а нам нужно еще организовать пищалку и «убегалку».

Ну с пищалкой все достаточно просто — здесь используется пьезоизлучатель без генератора. Отсутствие генератора нужно для того, чтобы можно было самому подобрать подходящую частоту писка. А вот с «убегалкой» все оказалось гораздо сложнее. После долгих раздумий снова было решено использовать способ, который уже используется в игрушках — заставить мышонка двигаться за счет вибрации. Был куплен вибромотор подобный тем, что используются в телефонах, и тут появилась первая (впрочем и единственная) проблема — мягкое тело игрушки полностью поглощало вибрации, и, как следствие, двигаться она не хотела решительно. В этом месте стоило задуматься о другом способе передвижения мышки, но широкая русская душа взяла свое и из подручных средств был сколхожен вибромотор побольше (фото не выкладываю, ибо стыдно). Не сказать, что это полностью решило все проблемы, но по крайней мере мышь начала очень медленно но передвигаться. Впрочем, сама вибрация игрушки должна оказаться неплохим игровым эффектом.

Ну и естественно необходим аккумулятор и контроллер заряда для него. В качестве первого был выковырян литий-полимерный аккумулятор из сломанного плеера, а в качестве второго была куплена микросхема MAX1555.

Как это делалось

Поскольку в бюджете я себя ограничил, то о заводских платах не могло быть и речи. Единственным доступным для дома способом изготовления оказался ЛУТ. О нем написано невероятное количество статей, в том числе и на Хабре, поэтому не стану заострять здесь свое внимание. Вот схема, трассировка и фото уже изготовленной платы:
Скрытый текст

Схема в Altium Designer


Растрассированная плата


Что вышло в итоге

После пайки и отладки программной части (код писался на С) все это дело было аккуратно зашито в предварительно выпотрошенное тело мыши. Осталось только сделать технические отверстия под выключатель и разъем зарядки:


Собственно, на этом и все. Может быть немного неаккуратно, но вполне работоспособно. Теперь игрушку можно отправлять на тест любому знакомому коту.

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

Видео работы готовой игрушки:

http://youtu.be/NIWQDKcn1Sg
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.