Мобильное устройство для слежения за домашними животными

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

Чтобы не обвешиваться камерами мастер-самодельщик изготовил мобильное устройство удаленно управляемое по смартфону.
Инструменты и материалы:
-Arduino Uno;
-Raspberry Pi;
-CNC Shield;
-Драйвер шагового двигателя A4988 — 4 шт;
-Pi camera;
-Ультразвуковой датчик расстояния;
-АКБ 11.1В;
-Шаговый двигатель NEMA 17 — 2 шт;
-Стабилизатор напряжения UBEC 5В;
-Колеса диаметром 7 см — 2 шт;
-Ролики -2 шт;
-Крепеж;
-Компьютер с ПО;
-3D-принтер;
-Акрил;
-Лазерный резак;
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг первый: проект
Сначала устройство было спроектировано в программе Fusion 360. У робота имеются следующие особенности:
-Его можно контролировать через приложение по Интернету. Это позволяет пользователю подключаться к роботу из любой точки мира.
-Встроенная камера, транслирующая потоковое видео на смартфон, помогает пользователю маневрировать по дому и взаимодействовать с домашним животным.
-Дополнительная чаша для лакомства, с помощью которой можно дать питомцу лакомство.
Raspberry Pi здесь используется для подключения к Интернету, поскольку он имеет встроенный модуль Wi-Fi.
Arduino используется для подачи команд шаговым двигателям.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг второй: 3D-печать, лазерная резка
Некоторые части, которые используются в этом проекте, мастер заказал в мастерской. Сначала они были смоделированы в Fusion 360, а затем сделаны с использованием 3D-принтера и лазерного резака.
3D печатные части:
Stepper Holder x 2 шт.
Vision System Mount x 1 шт.
Electronics Standoff x 4 шт.
Vertical Spacer x 4 шт.
Chassis Reinforcement x 2 шт.
Treat Bowl Lid x 1 шт.
Treat Bowl x 1 шт.
Rear Stepper Mount x 1 шт.
Winding Disc x 1 шт.
Детали для лазерной резки
Bottom Panel x 1 шт.
Top Panel x 1 шт.
Заархивированные папки, содержащая все файлы STL и файлы для лазерной резки, находится ниже.
3dprints.rar
lasercutting.pdf
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг третий: сборка платформы
Как только все детали будут напечатаны и вырезаны мастер начинает сборку. Разработанный держатель шагового двигателя предназначен для модели NEMA 17. Пропустите вал двигателя через отверстие и закрепите двигатель на месте с помощью крепежных винтов. После этого оба двигателя должны быть надежно закреплены на держателях.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиДля крепления держателей к нижней панели, вырезанной лазером, используются болты M4. Прежде чем закрепить их гайками, нужно усилить армирующие полоски.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиАкриловая панель имеет две секции, вырезанные под колеса. Колеса, которые используются имеют диаметр 7 см и шли с установочными винтами, которые крепились к 5-мм шаговым валам. Необходимо убедитесь, что колеса надежно закреплены и не проворачиваются на валу.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиЧтобы шасси двигалось плавно, спереди и сзади устройства, устанавливаются ролики. Это не только предотвращает опрокидывание робота, но и позволяет свободно поворачивать шасси в любом направлении. Ролики бывают разных размеров, в частности, эти поставлялись с одним поворотным винтом, который был закреплен к основанию. Для регулирования высоты мастер использовал проставки.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг четвертый: электроника
Теперь можно приступить к монтажу электронной части. Отверстия в акриловой панели, совмещены с монтажными отверстиями Arduino и Raspberry Pi. Используя 3D-печатные стойки, электроника устанавливается немного выше акриловых панелей, чтобы вся лишняя проводка была аккуратно спрятана под ней. Arduino и Raspberry Pi фиксируется с помощью гаек и болтов M3. После фиксации Arduino устанавливается драйвер шагового двигателя и подключаются провода в следующей конфигурации:
Левый двигатель к порту оси Х драйвера
Правый двигатель к порту оси Y драйвера

После подключенных шаговых двигателей подключает Arduino к Raspberry Pi с помощью USB-кабеля Arduino, при этом передняя часть робота является стороной, на которой установлена Raspberry Pi.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиОсновным источником информации для робота-наблюдателя является зрение. Мастер решили использовать Picamera, совместимая с Raspberry Pi, для передачи потокового видео пользователю через Интернет. Также устанавливается ультразвуковой датчик расстояния, чтобы избежать препятствий, когда робот работает автономно. Оба датчика крепятся к держателю с помощью винтов.

Picamera вставляется в порт Raspberry Pi. Ультразвуковой датчик подключается следующим образом:
Ультразвуковой датчик VCC — 5 В CNC Shield
GND — GND
TRIG к X + концевой стопорный штифт
ECHO — Y + концевой стопорный штифт экране ЧПУ
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг пятый: установка верхней части
Закрепляет видеокамеру к передней части верхней панели. К задней части крепит шаговый двигатель. Он будет открывать крышку емкости с лакомством.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиК нижней панели крепит четыре стойки. На стойках закрепляет верхнюю акриловую панель. К панели крепит чашку.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиУстанавливает крышку. Открывается крышка просто. На вал верхнего шагового двигателя установлена катушка. На катушку наматывается леска. Второй конец лески крепится к крышке. Когда двигатель начинает вращаться леска наматывается на барабан и крышка открывается.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг шестой: облако
Дальше необходимо создать базы данных для системы, чтобы можно было общаться с роботом со своего мобильного приложения из любой точки мира. Нажмите на следующую ссылку (Google Firebase), которая приведет вас на сайт Firebase (вход с помощью учетной записи Google). Нажмите кнопку «Get Started», чтобы перейти к консоли Firebase. Затем нужно создать новый проект, нажав «Add Project» и заполнит строки требования (имя, данные и т. д.) Завершит, нажав кнопку «Create Project».

Выбираем «database» в меню слева. Далее нажимаем кнопку «Create Database», выбираем опцию «test mode». Устанавливаем «realtime database» вместо «cloud firestore», щелкнув раскрывающееся меню вверху. Выбираем вкладку «rules» и меняем «false» на «true». Затем нужно нажать на вкладку «data» и скопировать URL базы данных.

Последнее, что нужно сделать, это нажать на значок шестеренки рядом с обзором проекта, затем в «project settings», выбрать вкладку «service accounts», наконец, нажать «Database Secrets» и записать безопасный код вашей базы данных. Выполнив этот шаг, вы успешно создали свою облачную базу данных, к которой можно получить доступ со своего смартфона и с Raspberry Pi.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг седьмой: приложение для смартфона
Следующая часть — приложение для смартфонов. Мастер решил использовать MIT App Inventor, чтобы создать собственное приложение. Чтобы использовать созданное приложение, сначала откройте следующую ссылку (MIT App Inventor), которая приведет на их веб-страницу. Затем нажмите «create apps» в верхней части экрана, и вход в свою учетную запись Google.

Дальше нужно загрузить файл, который указан ниже. Откройте вкладку «projects» и нажмите «Import project (.aia) from my computer», затем выберите файл, который вы только что загрузили, и нажмите «ОК». В окне компонентов прокрутите все вниз, пока не увидите «FirebaseDB1», щелкните по нему и измените «FirebaseToken», «FirebaseURL» на значения, которое было скопировано выше. После завершения этих шагов можно загрузить и установить приложение. Можно загрузить приложение прямо на свой телефон, нажав на вкладку «Build» и нажав «App (provide QR code for .apk)», затем отсканировав QR-код со своего смартфона или нажав «App (save .apk to my computer)»
IOT_pet_monitoring_system.rar
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг восьмой: программирование Raspberry Pi
Raspberry Pi используется по двум основным причинам.
Он передает живой видеопоток от робота на веб-сервер. Этот поток может быть просмотрен пользователем с помощью мобильного приложения.
Он читает обновленные команды в базе данных Firebase и дает Arduino команду выполнить необходимые задачи.

Для настройки Raspberry Pi для прямой трансляции уже существует подробное руководство, которое можно найти здесь. Инструкции сводятся к трем простым командам. Включите Raspberry Pi, откройте терминал и введите следующие команды.

git clone https://github.com/silvanmelchior/RPi_Cam_Web_Interface.git
cd RPi_Cam_Web_Interface
./install.sh

После завершения установки перезапустите Pi, и вы сможете получить доступ к потоку, выполнив поиск по http: // IP-адресу вашего Pi в любом веб-браузере.

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

sudo pip install requests==1.1.0
sudo pip install python-firebase

Скачиваем прилагаемый ниже файл python и сохраните его на Raspberry Pi. В четвертой строке кода измените COM-порт на порт, к которому подключен Arduino. Затем измените URL-адрес в строке 8 на URL-адрес Firebase, о котором ранее писали. Наконец, запустить программу через терминал. Эта программа получает команды из облачной базы данных и передает их в Arduino через последовательное соединение.
iot_pet_monitor_serial_transfer.py
Мобильное устройство для слежения за домашними животнымиШаг девятый: программирование Arduino
Arduino получает сигнал от Pi и дает команду на исполнительные механизмы выполнять необходимые задачи. Загрузите код Arduino, прикрепленный ниже, и загрузите его на Arduino. После программирования Arduino подключите его к одному из USB-портов Pi с помощью специального USB-кабеля.
final.rar
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиШаг десятый: питание
Устройство будет работать от литий-полимерной батареи. Питание от батареи идет непосредственно на экран ЧПУ для питания двигателей, и, по другой шине, к 5-вольтовому UBEC, для питания Raspberry Pi через контакты GPIO. 5В от UBEC подключено к выводу 5 В Raspberry Pi, а GND от UBEC подключено к выводу GND на Pi.
Мобильное устройство для слежения за домашними животнымиШаг одиннадцатый: подключение
Интерфейс приложения позволяет управлять роботом-наблюдателем, а также транслировать прямую трансляцию с встроенной камеры. Чтобы подключиться к роботу необходимо убедится, что у вас стабильное Интернет-соединение, а затем просто ввести IP-адрес Raspberry Pi в текстовом поле и нажать кнопку обновления. После этого на экране появится прямая трансляция, и можно будет контролировать различные функции робота.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животнымиТеперь, когда робот для наблюдения за домашними животными полностью собран, можно наполнить миску лакомством для собак.
По словам мастера, как только собака преодолела первоначальный страх перед этим движущимся объектом, она преследовала бота по дому. Бортовая камера обеспечивает хороший широкоугольный обзор окружающей обстановки.
Мобильное устройство для слежения за домашними животнымиМобильное устройство для слежения за домашними животными

Понравилась статья? Поделиться с друзьями: