В данном цикле статей я буду рассказывать о моем опыте сборки «умной» автоматической системы для кормления домашнего питомца, в моем случае – кота.
Хочу сразу отметить, что на первом шаге речь пойдет только об "автоматической" кормушке, а "умной" она станет на следующих этапах (если повезет, и все пойдет по плану).
Итак, начнем с концепции и целей:
На первом шаге не требуется большое количество датчиков и манипуляторов, достаточно одного серводвигателя (например, Micro Servo Towerpro SG90 9 г), поэтому все управление происходит с платы ArdruinoUno, которая идеально подходит для задач такого рода.
Системы кормления так или иначе содержат некоторый контейнер, в котором лежит сухой корм, и вращающийся механизм, дозирующий его количество. Изучив опыт других "изобретателей", я бы выделила три основных механизма:
Все материалы, которые мне были нужны для сборки кормушки на первом этапе:
Логика работы механизма проста: в крышке банки делается дырка типа сектор (центр крышки не вырезается), такой же сектор вырезается из пластмассы. Внутрь крышки прикрепляется серводвигатель, например, скотчем. На ось двигателя насаживается сначала крышка, а с внешней стороны вырезанный сектор. Так, при повороте оси серводвигателя вырезанный сектор смещается относительно дырки в крышке банки.
Также надо не забыть сделать дырочку под вывод провода серводвигателя наружу для подключения к плате. На шаге 1 кормежка происходит по таймеру, кот у меня не обжора, поэтому открытие сектора происходит раз в день на короткое время, ниже код для Arduino:
Для крепежа банки к стене я использовала вот такие магниты, каждый на 4кг (мне кажется лучше использовать более мощные). К банке магниты крепятся просто клеем, к стене - винтами.
Плата прикреплена к банке при помощи такой липучки, ее удобно снимать и крепить обратно. Липучка такая продается в любом хозяйственном, используется для крепежа картин.
Поскольку у меня единственным внешним модулем является серводвигатель, то дополнительного питания не надо, достаточно запитать плату, ее можно подключить напрямую к сети через usb зарядку на 5V.
Вот как все выглядит в собранном состоянии:
Ниже я набросала несколько идей дальнейшего развития кормушки, их много и пока непонятно, что именно будет делаться дальше, эта часть для обсуждения.
Надеюсь кому-то это будет полезно.
В данном цикле статей я буду рассказывать о моем опыте сборки «умной» автоматической системы для кормления домашнего питомца, в моем случае – кота.
Хочу сразу отметить, что на первом шаге речь пойдет только об "автоматической" кормушке, а "умной" она станет на следующих этапах (если повезет, и все пойдет по плану).
Итак, начнем с концепции и целей:
На первом шаге не требуется большое количество датчиков и манипуляторов, достаточно одного серводвигателя (например, Micro Servo Towerpro SG90 9 г), поэтому все управление происходит с платы ArdruinoUno, которая идеально подходит для задач такого рода.
Системы кормления так или иначе содержат некоторый контейнер, в котором лежит сухой корм, и вращающийся механизм, дозирующий его количество. Изучив опыт других "изобретателей", я бы выделила три основных механизма:
ольно бюджетный вариант. Но не для таких как я - самостоятельно все спроектировать, вырезать и ровненько соединить требует другого уровня аккуратности.
Все материалы, которые мне были нужны для сборки кормушки на первом этапе:
Логика работы механизма проста: в крышке банки делается дырка типа сектор (центр крышки не вырезается), такой же сектор вырезается из пластмассы. Внутрь крышки прикрепляется серводвигатель, например, скотчем. На ось двигателя насаживается сначала крышка, а с внешней стороны вырезанный сектор. Так, при повороте оси серводвигателя вырезанный сектор смещается относительно дырки в крышке банки.
Также надо не забыть сделать дырочку под вывод провода серводвигателя наружу для подключения к плате. На шаге 1 кормежка происходит по таймеру, кот у меня не обжора, поэтому открытие сектора происходит раз в день на короткое время, ниже код для Arduino:
#include
Для крепежа банки к стене я использовала вот такие магниты, каждый на 4кг (мне кажется лучше использовать более мощные). К банке магниты крепятся просто клеем, к стене - винтами.
Плата прикреплена к банке при помощи такой липучки, ее удобно снимать и крепить обратно. Липучка такая продается в любом хозяйственном, используется для крепежа картин.
Поскольку у меня единственным внешним модулем является серводвигатель, то дополнительного питания не надо, достаточно запитать плату, ее можно подключить напрямую к сети через usb зарядку на 5V.
Вот как все выглядит в собранном состоянии:
http://habrahabr.ru/https:/docs.google.com/drawings/d/sZPzsxkEnz9YKjsg006HPBA/image?w=320&h=311&rev=7&ac=1
"Ниже я набросала несколько идей дальнейшего развития кормушки, их много и пока непонятно, что именно будет делаться дальше, эта часть для обсуждения.
Надеюсь кому-то это будет полезно.
Этот проект сделан на плате WIFI ESP8266 и заточен на управление и мониторинг через приложение BLYNK на вашем смартфоне.
Порционность дозировки можно настраивать, а так же визуально отображать заполнение в приложении BLYNK . И еще присутсвует куча настроек, в самом приложении о которых я расскажу ближе к концу поста и продемонстрирую в видео на моем канале в Ютубе Youtube - DenisGeek
Приложения в плеймаркете для смартфона:
Схематика данного устройства весьма простая. Состоит из платы ЕСП8266 - которая служит мозгами, а так же средством связи с вашим вай-фай роутером,передавая данные через спец. API ключ на сервера приложения BLYNK . Наши "мозги" управляют драйвером шагового двигателя, а он в свое время задает движение шаговику NEMA17 . Плата понижайка LM2596 служит понижающим модулем для питания платы ESP8266 .
Так же есть выносная кнопка на корпус, которая добавлена через подтягивающий резистор на 10Ком на землю - реализует функцию для запуска "кормления" в ручном режиме.
После всех манипуляций загружаем скетч, первым делом подключаем питание к нашей системе, ждем 20 секунд и для теста нажимаем кнопку провернуть шнек.Если есть реакция - значит собрано верно. Далее запускаем приложение BLYNK .Первым делом смотрим на статус проект - если все верно то ваша кормушка должна появится в сети. После чего нужно установить часовой пояс, кликнув на иконку часов, а так же можно сразу настроить нужные таймеры. Для синхронизации настроек - нажать кнопку "Таймер " в режим включено. Если после перезагрузки (пропадания питания) таймеры не срабатывают, нужно зайти в приложение и нажат кнопку "Таймер" выключить-включить.
Наверно, как и многие владельцы домашних животных, задумался о том, чтобы мой кот не голодал в течение дня, когда его некому покормить, а предыдущую порцию корма он уже съел. Поэтому появилась идея сделать автокормушку для кота своими руками. Поискав в интернете разные варианты кормушек и тех, которые имеются в продаже, и тех, которые люди делают сами, решил, что ничего из увиденного мне не подходит, да и сделать автокормушку самому было интересно.
Необходимо было, чтобы кормушка вмещала в себя тарелку с кормом, была удобной для кота (чтобы ему легко было есть, не тянуться к тарелке), чтобы тарелку было легко ставить и извлекать из кормушки, чтобы кормушку легко было мыть и она не занимала много места по площади, чтобы была безопасной для животного. Также необходимо, чтобы время открытия кормушки можно было поставить любое (покормить кота через два часа, три или, например, через четыре часа тридцать две минуты), дисплей для отображения времени и чтобы все это работало от батареек.
Решил, что кормушка будет треугольной формы, и у нее будет открываться, по истечении заданного времени, крышка вверх. Автокормушку делал из мебельного ЛДСП. Опиленные края можно проклеить кромочной лентой. Для того чтобы крышка кормушки открывалась установлено две небольшие петли. Автокормушка должна только открыться в нужное время, закрываться сама она не должна — в этом нет необходимости. В качестве подъемного механизма крышки был использован мебельный газлифт на 50 Ньютонов. Для удерживания крышки в закрытом положении использовался сервопривод SG90, о котором шла речь . Далее, чтобы контролировать устанавливаемое время отчета до открытия кормушки для кота использован дисплей 1602 LCD с синей подцветкой, который имеет две строки по 16 символов в каждой.
«Мозгом» всей кормушки является многим хорошо известная плата Arduino Nano (с зашитой программой обеспечивающей необходимый функционал), которая, в данном случае, управляет выводом информации на дисплей, ведет отчет установленного времени и подает команду на сервопривод для закрытия и открытия крышки. Для взаимодействия с кормушкой использовался bluetooth HC-06 модуль. Таким образом, мобильный телефон по bluetooth связи можно соединить с кормушкой и с телефона устанавливать время, через которое будет открыта автокормушка и запускать этот таймер.
Чтобы кормушка автоматически включалась и запирала подъемную крышку в закрытом положении, установлен концевик, который срабатывает при опускании крышки. Все это питается от двух батареек типа «Крона», расположенных на тыльной стороне.
Как все работает. Изначально крышка отрыта, вся электроника кормушки обесточена. Внутрь кормушки устанавливается корм, крышка усилием руки опускается, срабатывает концевик, подается питание. В ардуино начинает исполняться прошитый программный код. Включается дисплей. Включается сервопривод и фиксирует крышку в закрытом положении. Ардуино ждет, пока через bluetooth к нему подключатся и посредством диалога внесут запрашиваемые данные времени.
На телефоне включаем bluetooth, запускаем bluetooth мессенджер и подключаем к кормушке. Вносим данные времени: количество часов и минут, через которое кормушка должна открыться. Для запуска таймера отправляем команду «g». Начинается обратный отчет установленного времени, которое видно на дисплее. Через 30 секунд подсветка дисплея гаснет с целью экономии заряда батарей. По истечению времени сервопривод отпирает крышку и та поднимается с помощью газлифта. Концевик размыкается и отключает все электронику от батарей, опять же экономия энергии. Аппаратно, конечно, можно сделать все проще, но было интересно сделать именно так.