This is an old revision of the document!
Daria Corpaci, 332CB
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.
Vor exista 3 modalități prin care va fi acționat automatul:
Proiectul este realizat exclusiv în Arduino IDE.
Am folosit 3 biblioteci auxiliare, pentru modulele de LCD și RTC, precum și pentru servomotor:
Programul este integral structurat în cele 2 funcții, void setup() și void loop(). În setup, am setat pinii corespunzători butonului și servomotorului, 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ă daca este 12:00 sau 18:00 sau dacă butonul este apăsat. În caz afirmativ, afișez ora și data curente, seminificând ultima masă primită, ș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ă.
Din punct de vedere al implementării hardware, în primă fază am simulat circuitul in Tinkercad, însă fără modulele de Bluetooth și RTC.
Am realizat circuitul și în format fizic și am încărcat codul pe plăcuța Arduino. Ulterior, am adăugat integrat ultimele 2 mpdule pe plăcuță.