Перейти к содержанию

Лазерная игрушка для кошки на Ардуино

Лазерная игрушка для кошки на Ардуино

Игрушка на Ардуино для кошки (котенка) — простой проект с минимальным количеством необходимых деталей. Игрушку для вашей кошки довольно легко сделать своими руками. На этой странице мы представим схему сборки проекта с пошаговыми инструкциями и рассмотрим программу для управления серводвигателями от Arduino, в которую вы можете подставить собственные значения скорости поворота серво и длительности игры.

Необходимые компоненты:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • лазерный светодиод или указка
  • два сервопривода
  • макетная плата
  • коннекторы

Дополнительные материалы на эту тему:

  1. Подключение и управление серво от Ардуино
  2. Парктроник на Ардуино с дисплеем LCD 1602
  3. Счетчик людей на Ардуино с LCD дисплеем

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

Лазерная игрушка для кошки на Arduino

Лазерная игрушка для кошки на Arduino

Схема подключения сервоприводов и светодиода показана на изображении выше. Чтобы сделать конструкцию более прочной, лучше изготовить корпус игрушки на 3D-принтере или найти более надежное крепление для качалок servo, так как сервоприводы могут оторваться при резких поворотах. После подключения схемы и сборки конструкции для лазерной игрушки загрузите следующую программу в микроконтроллер Arduino.

Скетч игрушки для кошки с лазерным светодиодом


#include "Servo.h"
Servo servo_h;
Servo servo_v;

unsigned long minuts = 10 * 60000;
unsigned long game_time;

void setup() {
  servo_h.attach(9);
  servo_v.attach(11);

  pinMode(7, OUTPUT);
  digitalWrite(7, HIGH);

  game_time = millis();
}

void loop() {
  while (millis() - game_time < minuts) {
     int horizont = random(1, 15) * 5;
     int vertical = random(1, 15) * 2;
     int pausa = random(5, 10) * 150;

     servo_h.write(horizont);
     servo_v.write(vertical);
     delay(pausa);
  }
  digitalWrite(7, LOW);
}

Заключение. Стоит напомнить об опасности лазерного луча для глаз человека или животного. Также следите за тем, чтобы пятно лазерной игрушки не падало на предметы, которые котенок может повредить, и тем более на открытые окна. В программе процедура while будет выполняться до тех пор, пока счетчик времени не станет больше указанного количества миллисекунд unsigned long minuts = 10 * 60000; (по умолчанию 1 минута).

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

newzaym
➜