Автоматична годівниця для акваріума. Годівниця для акваріумних риб на базі Arduino Розміри каркасу під годівницю

Як часто ви забували нагодувати своїх рибок?

Ну, щодо мене, то це відбувається досить рідко. Я не можу просто виїхати з міста на пару днів, а потім думати на кого залишити свій акваріум.

Після того, як я придбав Sparkfun RedBoard, було ухвалено рішення створити автоматичний пристрійдля подачі корму в акваріум.

Ну що ж, поїхали...

Крок 1: Список компонентів, що використовуються

* Arduino UNO або сумісний мікрокомп'ютер.
* Адаптер живлення напругою 9В чи 12В.
* Кроковий двигун з напругою живлення 5В зі старого дисководу гнучких дисків.
* Перегородка від ящика з інструментами, потрібна саме гладка перегородка, яку я встановлю зверху рухомої кришки.
* Вимикач важеля від стаціонарного телефону для індикації правильності закриття кришки.
* Корпус від жорсткого дискаяк контейнер для корму.
* Зламана пластикова лінійкаабо будь-яка гладка пластина.
* Штатив CCTV-камери.
* Один резистор номіналом 10 кОм.
* Механічний AC Таймер.

Крок 2: Складання

Конструкція годівниці, яка виготовлена ​​зі старих матеріалів, показана на малюнку номер 1. Я вирізав отвір з одного боку корпусу від жорсткого диска. Може для вас буде легше використовувати пляшку від мінеральної води, проте для пляшки потрібна опора, яка утримуватиме її в перевернутому положенні.

Я використовував такий штатив CCTV-камери. Далі мені потрібно було лише просвердлити отвір у корпусі. Корпус має ідеальну висоту, що дозволяє встановити під нього кроковий двигун (рисунок 2 і 3).

Далі для переміщення кришки я використовував кроковий двигун напругою 5В з черв'ячною направляючою разом з рухомим механізмом з дисководу гнучких дисків (компонент, що використовується для переміщення лінз дисководу; малюнки номер 3 і 4). Я помістив невелику гладку пластикову перегородку від ящика з інструментами зверху тримача лінз нижче отвору корпусу, де передбачається вихід гранул корму (рисунок номер 2). Ви також можете використовувати поламану лінійку. Залиште підлогу або один міліметр від нижньої частини корпусу, інакше гранули корму не зможуть пройти через кришку.

Крок 3: Доопрацювання корпусу

Контролює проходження потоку гранул корму через отвір, великі гранули не затримуються в лівій та правій частині корпусу.

Після кількох днів використання я виявив дефект на корпусі. Корм не виходив, хоч у контейнері було ще багато корму.

Потім я зрозумів, що гранули не минають, як було задумано. Ось чому мені була потрібна зламана лінійка або будь-яка гладка пластина, яка підійде в контейнер і утворює "V"-подібну форму. Тепер усі гранули корму проходитимуть через отвір.

Крок 4: Електронні компоненти

Встановіть кроковий двигун, вимикач, резистор 10 кОм, як показано на малюнку вище. Використання макетної плати полегшить тестування та розуміння роботи схеми. Макетну платуможна використовувати для іншого проекту (дивіться останній малюнок вище, без макетної плати).

Підключіть чотири дроти крокового двигунадо цифрових висновків 8, 9, 10, 11

Іншу ніжку підключіть до землі через резистор 10 кОм і також не забудьте під'єднати до цифрового виводу 2.

Помістіть вимикач спереду рухомої кришки, і зігніть металеву частину, зробивши стопор (помаранчевий та червоний кабелі на третьому малюнку). Коли вимикач переміщається вперед і натискає на стопор, мікроконтролер arduinoреєструє значення HIGH на виведенні вимикача та зупиняє двигун.

Я прикріпив ізолентою свою плату RedBoard ( arduino UNO) ззаду корпусу, а таймер з вилкою на його боці. Таймер з вилкою використовується як баланс для корпусу, щоб він правильно стояв.

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

Тепер вам не потрібно брати акваріум із собою у відпустку. Тільки не забудьте перед від'їздом насипати корм у контейнер.

  • Tutorial

У даному циклі статей я розповідатиму про мій досвід складання «розумної» автоматичної системидля годування домашнього вихованця, у моєму випадку – кота.


Хочу відразу відзначити, що на першому кроці йтиметься лише про "автоматичну" годівницю, а "розумну" вона стане на наступних етапах (якщо пощастить, і все піде за планом).


Отже, почнемо з концепції та цілей:

  1. Зробити систему, яка звільнить мене від обов'язку годувати кота сухим кормом (крок 1)
  2. Оснастити систему датчиком ваги під мискою і здійснювати годування відповідно до показань ваг: якщо миска порожня – підсипати, інакше – чекати доки миска не стане порожньою (крок 2)
  3. Додати в систему вай-фай модуль та відеокамеру для передачі фотографій із улюбленим котом, а також забезпечити контроль годівлі віддалено. Крім того, збирати дані про те, скільки кіт з'їв і будувати аналітику (крок 3)

На першому кроці не потрібно велика кількістьдатчиків і маніпуляторів, достатньо одного серводвигуна (наприклад, Micro Servo Towerpro SG90 9 г), тому все управління походить з плати ArdruinoUno, яка ідеально підходить для таких завдань.


Системи годівлі так чи інакше містять деякий контейнер, в якому лежить сухий корм, і механізм, що обертається, дозує його кількість. Вивчивши досвід інших "винахідників", я виділила б три основні механізми:

Усі матеріали, які мені були потрібні для збирання годівниці на першому етапі:

  • Скляна банка
  • ArduinoUno
  • MicroServo (у мене дозволений кут повороту 180, але це не важливо)
  • шматок пластику
  • магніти
  • піни для з'єднання плати із серводигателем
  • Usb заряджання на 5V

Логіка роботи механізму проста: у кришці банки робиться дірка типу сектор (центр кришки не вирізається), такий же сектор вирізається із пластмаси. Усередину кришки прикріплюється серводвигун, наприклад скотчем. На вісь двигуна насаджується спочатку кришка, а з зовнішньої сторонивирізаний сектор. Так, при повороті осі серводвигуна вирізаний сектор зміщується щодо дірки у кришці банки.


Також треба не забути зробити дірочку під виведення дроту серводвигуна назовні для підключення до плати. На етапі 1 годівля відбувається по таймеру, кіт у мене не ненажера, тому відкриття сектора відбувається щодня на короткий часнижче код для Arduino:


#include #define servoPin 9 Servo myservo; void setup() //процедура setup ( myservo.attach(servoPin); //прив'язуємо привід до порту 9 ) void loop() ( myservo.write(0); //ставимо вал під 0 градусів delay(300); // чекаємо 0.3 секунди myservo.write(160); //ставимо вал під 160 градусів delay(86400000);

Для кріплення банки до стіни я використовувала такі магніти, кожен на 4кг (мені здається краще використовувати більш потужні). До банку магніти кріпляться просто клеєм, до стіни – гвинтами.


Плата прикріплена до банку за допомогою такої липучки, її зручно знімати та кріпити назад. Липучка така продається у будь-якому господарському, використовується для кріплення картин.


Бо в мене єдиним зовнішнім модулемє серводвигун, то додаткового живлення не треба, достатньо запитати плату, її можна підключити безпосередньо до мережі через зарядку usb на 5V.


Ось як все виглядає у зібраному стані:


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

  • встановлення датчиків руху, фотографування кота в той момент, коли він з'являється у зоні видимості. Інтеграція датчика ваги і датчика руху дозволяє визначати, коли кіт просто ходить повз годівницю, а коли прийшов поїсти. Відповідно, можна прикрутити аналітику, коли коте воліє їсти і як багато.
  • можна додати датчик ваги в сам контейнер з кормом, щоб годівниця визначала момент, коли стає порожньою і надсилала попередження господареві, що, мовляв, порожньо, треба поповнити. Потім, як варіант, прикрутити можливість автозамовлення корму з улюбленого сайту з доставкою.
  • Можна додати можливість годівниці працювати на двох котів:
    • Або це будуть дві різні годівниці, кожна з яких вміє відлякувати "чужого" кота.
    • Або це одна, але якось модифікована
  • Треба подумати як реалізувати напувалку і синтегрувати її з годівницею, додати систему фільтрації.

Сподіваюся, комусь це буде корисно.

Цей проект зроблений на платі WIFI ESP8266 та заточений на керування та моніторинг через додаток BLYNK на вашому смартфоні.

Також до проекту можна додати IP-камеру (або використовувати старий смартфон з камерою у вигляді сервера) для моніторингу в реальномучасу через IP Webcam Pro через віджет у програмі BLYNK.

Для подачі корму використовується кроковий двигун NEMA17 з кроком 1.8 градуса - 200 кроків на повний оборот. Двигун обертає шнек у сантехнічномуперехіднику, у який із бункера потрапляє корм.

Порційність дозування можна настроювати, а також візуально відображати заповнення у додатку BLYNK. І ще є купа налаштувань, у самому додатку про які я розповім ближче до кінця посту і продемонструю у відео на моєму каналі в ЮтубіYoutube - DenisGeek

Програми в плеймаркеті для смартфона:

Електронна частина та компоненти:

Схематика даного пристроюдуже проста. Складається з плати ЕСП8266 - яка служить мізками, а також засобом зв'язку з вашим вай-фай роутером, передаючи дані через спец. API ключ на сервері програми BLYNK. Наші "мозки" керують драйвером крокового двигуна, а він свого часу задає рух кроковику NEMA17. Плата нижня LM2596 служить понижувальним модулем для живлення плати ESP8266.
Також є виносна кнопка на корпус, яка додана через підтягуючий резистор на 10Ком на землю - реалізує функцію для запуску "годівлі" в ручному режимі.


Комплектуючі для проекту замовляли на Aliexpress:

Плата ЕСП 8266 NODEmcu LUA http://ali.pub/2k460i \ http://ali.pub/2k4622

Блок живлення 12 у 2 А http://ali.pub/2k464e

Драйвер крокового двигуна L289N http://ali.pub/2k4674

Кроковий двигун Nema17 http://ali.pub/2k46a8

Знижувальний перетворювач LM2596 http://ali.pub/2k46jk

Якщо не хочеться розпаювати плату ЄСП, можна з'єднати все макетними проводами http://ali.pub/2k46un

Допоміжний інструмент:

Паяльник http://ali.pub/2k2wz8

Припій http://ali.pub/2k471g

Кусачки http://ali.pub/2k4730


Все інше можна купити за місцем у радіо або будівельному магазині (брус для складання каркасу, розподільчу коробку, хомути, шурупи тощо)



Для початку я зібрав все у вигляді макета на столі і перевірив на працездатність, так само зробив додаткові налаштування.



Після чого закинув усе у пластиковий бокс, куплений у будівельному магазині.

Розміри каркасу під годівницю:


Каркас виглядає так. Все дуже просто і універсально, зібрано з бруса, фанери та саморізів.



Завантажити файли під друк можна тут: https://goo.gl/EwqCC1

Механізм подачі був надрукований на 3д принтері – шнек, склеєний з 2х частин клеєм Дисмокол.



Друк пройшов успішно.



Друк можна замовити, або спробувати пристосувати шнек від зламаної м'ясорубки.


За основу для бака була використана пляшка від квасу "тарас", а також з'єднувач для пластикових труб.



Далі загальний вигляд зібраного пристрою:



Після складання, достатньо подати харчування на наш блок, а так само через секунд 20 натиснути на кнопку для перевірки і запуску "годування" і перевірки дозування.

А далі переходимо до додатку BLYNK. Завантажуємо його на смартфон із плеймаркету або з сайту https://www.blynk.cc/

Після завантаження програми логінімс / реєструємося і отримуємо 2000 балів енергії для створення своєї програми.

Далі скануємо QR код і автоматично підтягуємо шаблон вже мого віджету:


Після чого в додатку потрібно буде вказати ваш токен авторизації (який вам прийшов на пошту після створення нового проекту – так само його вказуємо у коді програми)



Так само якщо у вас зареєстрований аккаунт був давно, то енергії у вас може бути більше, або ж можна докупити в додатку - 1000 за 1 долар.

У мене вийшов такий віджет, але коштує він 3200-3600 (залежно від візуальних модулів)


І останній варіант з 6 таймерами - дуже зручно.



Також додаю таблицю прив'язок віртуальних пінів до віджетів BLYNK



Допустимо для додавання ще одного таймера в додатку млинець, потрібно додати пункт Timer і в налаштуваннях виставити VIRTUAL OUTPUT V6 або V7 .




Прошивку з коментарями можна завантажити тут: https://goo.gl/xuaZm9

Так само як додати плату ESP8266 nodemcu в середу ARDUINO IDE і прошивати докладно розписано тут



Після всіх маніпуляцій завантажуємо скетч, насамперед підключаємо живлення до нашої системи, чекаємо 20 секунд і для тесту натискаємо кнопку провернути шнек. Якщо є реакція - значить зібрано правильно. Далі запускаємо додаток BLYNK. Насамперед дивимося на статус проект - якщо все правильно то ваша годівниця повинна з'явиться в мережі. Після чого потрібно встановити часовий пояс, клікнувши на іконку годинника, а також можна відразу налаштувати потрібні таймери. Для синхронізації налаштувань – натиснути кнопку "Таймер" у режим увімкнено. Якщо після перезавантаження (зникнення живлення) таймери не спрацьовують, потрібно зайти в програму та натиснути кнопку "Таймер" вимкнути-ввімкнути.



8 серпня 2017 о 09:43

Розумна автоматична годівниця для вихованця на базі Arduino- КРОК 1

  • Програмування мікроконтролерів
  • Tutorial

У даному циклі статей я розповідатиму про мій досвід складання «розумної» автоматичної системи для годування домашнього вихованця, у моєму випадку – кота.


Хочу відразу відзначити, що на першому кроці йтиметься лише про "автоматичну" годівницю, а "розумну" вона стане на наступних етапах (якщо пощастить, і все піде за планом).


Отже, почнемо з концепції та цілей:

  1. Зробити систему, яка звільнить мене від обов'язку годувати кота сухим кормом (крок 1)
  2. Оснастити систему датчиком ваги під мискою і здійснювати годування відповідно до показань ваг: якщо миска порожня – підсипати, інакше – чекати доки миска не стане порожньою (крок 2)
  3. Додати в систему вай-фай модуль та відеокамеру для передачі фотографій із улюбленим котом, а також забезпечити контроль годівлі віддалено. Крім того, збирати дані про те, скільки кіт з'їв і будувати аналітику (крок 3)

На першому кроці не потрібно багато датчиків і маніпуляторів, достатньо одного серводвигуна (наприклад, Micro Servo Towerpro SG90 9 г), тому все управління походить з плати ArdruinoUno, яка ідеально підходить для завдань такого роду.


Системи годівлі так чи інакше містять деякий контейнер, в якому лежить сухий корм, і механізм, що обертається, дозує його кількість. Вивчивши досвід інших "винахідників", я виділила б три основні механізми:

Усі матеріали, які мені були потрібні для збирання годівниці на першому етапі:

  • Скляна банка
  • ArduinoUno
  • MicroServo (у мене дозволений кут повороту 180, але це не важливо)
  • шматок пластику
  • магніти
  • піни для з'єднання плати із серводигателем
  • Usb заряджання на 5V

Логіка роботи механізму проста: у кришці банки робиться дірка типу сектор (центр кришки не вирізається), такий же сектор вирізається із пластмаси. Усередину кришки прикріплюється серводвигун, наприклад скотчем. На вісь двигуна насаджується спочатку кришка, а із зовнішнього боку вирізаний сектор. Так, при повороті осі серводвигуна вирізаний сектор зміщується щодо дірки у кришці банки.


Також треба не забути зробити дірочку під виведення дроту серводвигуна назовні для підключення до плати. На кроці 1 годівля відбувається за таймером, кіт у мене не ненажера, тому відкриття сектора відбувається щодня на короткий час, нижче код для Arduino:


#include #define servoPin 9 Servo myservo; void setup() //процедура setup ( myservo.attach(servoPin); //прив'язуємо привід до порту 9 ) void loop() ( myservo.write(0); //ставимо вал під 0 градусів delay(300); // чекаємо 0.3 секунди myservo.write(160); //ставимо вал під 160 градусів delay(86400000);

Для кріплення банки до стіни я використовувала такі магніти, кожен на 4кг (мені здається краще використовувати більш потужні). До банку магніти кріпляться просто клеєм, до стіни – гвинтами.


Плата прикріплена до банку за допомогою такої липучки, її зручно знімати та кріпити назад. Липучка така продається у будь-якому господарському, використовується для кріплення картин.


Оскільки у мене єдиним зовнішнім модулем є серводвигун, то додаткового живлення не треба, достатньо запитати плату, її можна підключити безпосередньо до мережі через USB зарядку на 5V.


Ось як все виглядає у зібраному стані:


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

  • встановлення датчиків руху, фотографування кота в той момент, коли він з'являється у зоні видимості. Інтеграція датчика ваги і датчика руху дозволяє визначати, коли кіт просто ходить повз годівницю, а коли прийшов поїсти. Відповідно, можна прикрутити аналітику, коли коте воліє їсти і як багато.
  • можна додати датчик ваги в сам контейнер з кормом, щоб годівниця визначала момент, коли стає порожньою і надсилала попередження господареві, що, мовляв, порожньо, треба поповнити. Потім, як варіант, прикрутити можливість автозамовлення корму з улюбленого сайту з доставкою.
  • Можна додати можливість годівниці працювати на двох котів:
    • Або це будуть дві різні годівниці, кожна з яких вміє відлякувати "чужого" кота.
    • Або це одна, але якось модифікована
  • Треба подумати як реалізувати напувалку і синтегрувати її з годівницею, додати систему фільтрації.

Сподіваюся, комусь це буде корисно.

  • Tutorial

У даному циклі статей я розповідатиму про мій досвід складання «розумної» автоматичної системи для годування домашнього вихованця, у моєму випадку – кота.


Хочу відразу відзначити, що на першому кроці йтиметься лише про "автоматичну" годівницю, а "розумну" вона стане на наступних етапах (якщо пощастить, і все піде за планом).


Отже, почнемо з концепції та цілей:

  1. Зробити систему, яка звільнить мене від обов'язку годувати кота сухим кормом (крок 1)
  2. Оснастити систему датчиком ваги під мискою і здійснювати годування відповідно до показань ваг: якщо миска порожня – підсипати, інакше – чекати доки миска не стане порожньою (крок 2)
  3. Додати в систему вай-фай модуль та відеокамеру для передачі фотографій із улюбленим котом, а також забезпечити контроль годівлі віддалено. Крім того, збирати дані про те, скільки кіт з'їв і будувати аналітику (крок 3)

На першому кроці не потрібно багато датчиків і маніпуляторів, достатньо одного серводвигуна (наприклад, Micro Servo Towerpro SG90 9 г), тому все управління походить з плати ArdruinoUno, яка ідеально підходить для завдань такого роду.


Системи годівлі так чи інакше містять деякий контейнер, в якому лежить сухий корм, і механізм, що обертається, дозує його кількість. Вивчивши досвід інших "винахідників", я виділила б три основні механізми:

Усі матеріали, які мені були потрібні для збирання годівниці на першому етапі:

  • Скляна банка
  • ArduinoUno
  • MicroServo (у мене дозволений кут повороту 180, але це не важливо)
  • шматок пластику
  • магніти
  • піни для з'єднання плати із серводигателем
  • Usb заряджання на 5V

Логіка роботи механізму проста: у кришці банки робиться дірка типу сектор (центр кришки не вирізається), такий же сектор вирізається із пластмаси. Усередину кришки прикріплюється серводвигун, наприклад скотчем. На вісь двигуна насаджується спочатку кришка, а із зовнішнього боку вирізаний сектор. Так, при повороті осі серводвигуна вирізаний сектор зміщується щодо дірки у кришці банки.


Також треба не забути зробити дірочку під виведення дроту серводвигуна назовні для підключення до плати. На кроці 1 годівля відбувається за таймером, кіт у мене не ненажера, тому відкриття сектора відбувається щодня на короткий час, нижче код для Arduino:


#include #define servoPin 9 Servo myservo; void setup() //процедура setup ( myservo.attach(servoPin); //прив'язуємо привід до порту 9 ) void loop() ( myservo.write(0); //ставимо вал під 0 градусів delay(300); // чекаємо 0.3 секунди myservo.write(160); //ставимо вал під 160 градусів delay(86400000);

Для кріплення банки до стіни я використовувала такі магніти, кожен на 4кг (мені здається краще використовувати більш потужні). До банку магніти кріпляться просто клеєм, до стіни – гвинтами.


Плата прикріплена до банку за допомогою такої липучки, її зручно знімати та кріпити назад. Липучка така продається у будь-якому господарському, використовується для кріплення картин.


Оскільки у мене єдиним зовнішнім модулем є серводвигун, то додаткового живлення не треба, достатньо запитати плату, її можна підключити безпосередньо до мережі через USB зарядку на 5V.


Ось як все виглядає у зібраному стані:


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

  • встановлення датчиків руху, фотографування кота в той момент, коли він з'являється у зоні видимості. Інтеграція датчика ваги і датчика руху дозволяє визначати, коли кіт просто ходить повз годівницю, а коли прийшов поїсти. Відповідно, можна прикрутити аналітику, коли коте воліє їсти і як багато.
  • можна додати датчик ваги в сам контейнер з кормом, щоб годівниця визначала момент, коли стає порожньою і надсилала попередження господареві, що, мовляв, порожньо, треба поповнити. Потім, як варіант, прикрутити можливість автозамовлення корму з улюбленого сайту з доставкою.
  • Можна додати можливість годівниці працювати на двох котів:
    • Або це будуть дві різні годівниці, кожна з яких вміє відлякувати "чужого" кота.
    • Або це одна, але якось модифікована
  • Треба подумати як реалізувати напувалку і синтегрувати її з годівницею, додати систему фільтрації.

Сподіваюся, комусь це буде корисно.