Automatic Feeder for Pets

Daria Corpaci, 332CB

Introducere

Viata cu animale de companie poate fi anevoioasă. Asta pentru că sunt foarte mofturoase și foarte mâncăcioase. Proiectul meu vine în ajutorul tuturor stăpânilor, implicit al meu, printr-un aparat care sa hrănească automat animalele, atât prin apăsare de buton, cât și la un interval de timp. În plus, va exista un modul de Bluetooth, prin care stăpânul să își poate hrăni animalul de companie inclusiv prin intermediul propriului telefon.

Ideea proiectului a luat naștere din dorința de a realiza un proiect util pentru mine, deoarece consider că sunt practice implementarea, respectiv folosirea unui astfel de automat în extrem de multe situații, de la momente când ești ocupat și nu ai timp să îți hrănești animalul de companie, când ești plecat din oraș și nu se poate ocupa nimeni de el sau în situațiile, sper puțin probabile, în care pur și simplu nu vrei să te ridici din pat, dar ești 100% convins că vecinul patruped de apartament este înfometat.

Descriere generală

Modul de funcționare

Vor exista 3 modalități prin care va fi acționat automatul:

  • Stăpânul va putea folosi propriul său telefon mobil prin intermediul modulului Bluetooth conectat la Arduino
  • Va exista un buton care, odată apăsat, va acționa servomotorul.
  • Prin modulul RTC se va putea ține evidența timpului. Arduino va verifica daca ora actuală corespunde cu ora setată în prealabil de stăpân, caz în care va fi acționat servomotorul. Va fi conectat, de asemenea, un modul LCD prin care se va afișa constant ultima oră la care animalul a fost hrănit, respectiv timpul rămăs până la următoarea masă.
Schema Bloc

Hardware Design

Listă de piese
  • Arduino UNO
  • Servomotor SG90 9g
  • Modul RTC DS3231
  • Modul Bluetooh HC-02
  • Modul LCD 16×2 I2C
  • Buton
  • Fire de legătură
  • Rezistență
Schema electrică

Din punct de vedere al implementării hardware, în primă fază am simulat circuitul in Tinkercad, însă fără modulele de Bluetooth și RTC, deoarece nu sunt disponibile în simulator.

Am realizat circuitul și în format fizic și am integrat ultimele 2 module pe plăcuță.

Software Design

Proiectul este realizat exclusiv în Arduino IDE.

Am folosit 3 biblioteci auxiliare, pentru modulele de LCD și RTC, precum și pentru servomotor:

  • LiquidCrystal_I2C.h
  • DS3231.h
  • Servo.h

Programul este integral structurat în cele 2 funcții, void setup() și void loop(). În setup, am setat pinii corespunzători butonului(2) și servomotorului(9), respectiv am inițializat modulele de LCD și RTC, iar pentru cel din urmă am setat data și ora curente.

În void loop() verific ceea ce primesc prin Bluetooth de la aplicație, iar în cazul în care inputul este F(Feed) setez o varibilă globală pe 1 și afișez în aplicație mesajul “Meal time”. Pentru transmiterea datelor către modulul de Bluetooth, am folosit aplicația Arduino BlueControl, care se poate găsi și instala de pe Magazin Play.

Verific într-un if valoarea variabilei, ora curentă dacă este 12:00 sau 18:00 sau dacă butonul este apăsat. În caz afirmativ, afișez ora și data curente, semnificând ultima masă primită, alături de mesajul “Last meal”, și acționez servomotorul care se rotește, cu un delay de 5ms, de la 110 la 0 grade, pentru a deplasa capacul ce ține mâncarea, respectiv de la 0 la 110 pentru a îl aduce în poziția inițială.

Diagrama de activități

Design suport din lemn

Din punct de vedere al realizării suportului, în primă fază am luat măsuratori astfel încât să am suficient spațiu pentru bolul pisicii, să pot ascunde circuitul în spatele suportului și să am un spațiu unde să se poată depozita hrana animalului.

Suport - vedere din față

Suport - vedere din lateral

Pentru a susține servomotorul, am mai adăugat o bucată din lemn sub suportul pentru mâncare, lăsând un spațiu suficient pentru a putea trece capacul. Pe cel din urmă l-am făcut din mousse.

Suport - vedere de sus

În centrul suportului pentru mâncare am gandit o pâlnie dintr-un gât de sticlă de plastic, pentru a mă asigura ca nu este posibil ca mâncarea să cadă pe lateral atunci cand servomotorul nu este acționat, având în vedere ca mousse-ul se poate lăsa destul de ușor.

Suport - vedere din spate

Pe spatele suportului am lipit cu banda dublu adezivă circuitul.

Rezultate obţinute

Happy cat means happy owner =)

Concluzii

Sunt foarte mulțumită de rezultat, mi-a plăcut să lucrez pentru proiect, mai ales pentru că mi-am ales o idee care are o însemnătate și, de ce nu, o utilitate pentru mine. În primă fază am fost sceptică cu privire la întreg procesul, de la ideea suportului și alegerea componentelor hardware necesare, până la concretizarea pas cu pas a întregului proiect, însă totul a ieșit cum speram.

Download

Bibliografie/Resurse

pm/prj2022/cristip/automaticfeederforpets.txt · Last modified: 2022/05/31 18:47 by ana_daria.corpaci
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0