Pet feeder remote control

Introducere

Acest proiect constă într-un distribuitor de mâncare pentru animale care să fie programat la anumite ore pentru a oferi mâncare animalelor. Progrmarea intervalelor orare se va face printr-o telecomanda care va trimite semnal către un senzor infraroșu. Ideea a venit de la faptul că mulți stăpâni care nu își pot lua animalele cu ei într-un concediu, la muncă, nu au cu cine să lase animalele, dreot urmare acest distribuitor de mâncare poate fi util.

Descriere generală

Receptorul infraroșu va răspunde comenzilor date de la telecomandă. La început distribuitorul de mâncare verifică dacă mai are mâncare suficientă pentru o porție. În cazul în care există, utilizatorul poate naviga prin meniu folosind butoanele CH- și CH+ de pe telecomandă. Meniul este format din programarea unei noi ore de mâncare, vizualizarea orelor deja setate și hrănirea în momentul actual.

Schemă bloc:

Schemă montaj:

Schemă electrică:

Hardware Design

Componentele hardware:

  • Placa de Dezvoltare UNO R3
  • Senzor de Distanță Ultrasonic IOE-SR05
  • Modul cu Ceas în Timp Real DS3231
  • Modul Receptor Telecomandă Infraroșu
  • Micro Servomotor SG90 90°
  • LCD 1602 cu Interfață I2C
  • Telecomandă infraroșu

  • Mediu de Dezvoltare

Arduino IDE: Codul pentru distribuitorul automat de hrană pentru câini este scris și dezvoltat în mediul Arduino IDE.

  • Librării și Surse 3rd-party
  1. DS3231: Utilizată pentru interfațarea cu ceasul în timp real DS3231, care oferă o ținere exactă a timpului.
  2. LiquidCrystal_I2C: Utilizată pentru controlul afișajului LCD I2C, care afișează mesaje pentru utilizator.
  3. IRremote: Folosită pentru a primi și decoda semnalele de la telecomanda IR, permițând interacțiunea cu utilizatorul.
  4. Servo: Librăria standard Arduino pentru controlul servo motoarelor, folosită pentru a controla mecanismul de distribuire a hranei.
  • Algoritmi și Structuri Implementate
  1. Verificarea Hranei Disponibile → Folosirea unui senzor ultrasonic pentru a măsura distanța până la hrana din recipient și a determina dacă este suficientă mâncare.
  2. Programarea Hrănirii → Stocarea și gestionarea până la trei timpi de hrănire într-o matrice. Utilizatorul poate seta acești timpi folosind telecomanda IR.
  3. Hrănire Automată → Compararea timpului curent cu timpii programați și activarea servo motorului pentru a distribui mâncare la orele stabilite.
  4. Interfața cu Utilizatorul → Afișarea de mesaje pe LCD pentru a ghida utilizatorul prin meniuri și pentru a afișa starea curentă a dispozitivului (e.g., verificarea mâncării, setarea timpilor de hrănire, hrănirea manuală).
  5. Gestionarea Intrărilor de la Telecomandă → Decodarea semnalelor IR pentru a naviga între opțiuni și a seta timpii de hrănire.
  • Surse și Funcții Implementate
  1. Funcția setup() → Inițializează toate componentele hardware (LCD, IR, servo, RTC).Setează pinurile pentru senzorul ultrasonic.Afișează un mesaj de bun venit pe LCD.
  2. Funcția loop() → Actualizează ora curentă de la ceasul DS3231. Măsoară distanța folosind senzorul ultrasonic pentru a verifica disponibilitatea hranei.Verifică și execută programele de hrănire la timpii setați.Gestionează intrările de la telecomandă pentru a naviga în meniuri și a seta timpii de hrănire.
  3. Funcții de Afișare pe LCD → writeFirstLine(char* text): Afișează text pe prima linie a ecranului LCD.writeSecondLine(char* text): Afișează text pe a doua linie a ecranului LCD.
  4. Funcția microsecondsToCentimeters(long microseconds) → Convertește timpul de răspuns al senzorului ultrasonic în centimetri.
  5. Funcția make_Time(char number) → Permite utilizatorului să seteze timpul de hrănire prin introducerea cifrelor folosind telecomanda IR.

Rezultate Obţinute

Proiectul de distribuitor automat de hrană pentru câini a atins obiectivele stabilite și a demonstrat o funcționalitate completă și stabilă. Dispozitivul asigură hrănirea automată la timpii programați, oferă o interfață ușor de utilizat prin afișajul LCD și telecomanda IR, și include funcții suplimentare precum detectarea disponibilității hranei și hrănirea manuală. Performanța și fiabilitatea sistemului au fost validate prin teste extensive, iar rezultatele au fost satisfăcătoare din toate punctele de vedere.

Concluzii

Acest proiect de dispenser de mâncare pentru câini automatizează hrănirea animalelor de companie prin utilizarea unui ceas RTC, a unui senzor ultrasonic, a unui servo motor și a unui ecran LCD pentru interacțiunea cu utilizatorul. Sistemul permite setarea unor intervale precise de hrănire și monitorizarea nivelului de hrană disponibilă, asigurând astfel o îngrijire optimă și constantă a animalelor de companie.

Download

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2024/vstoica/robert.osnaga.txt · Last modified: 2024/05/27 23:15 by robert.osnaga
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