This is an old revision of the document!


FeedMe

Introducere

Voi începe prin a spune un singur lucru:

:!: Ador pisicile! :!:

Așa că atunci când mi-am ales proiectul am vrut să combin utilul cu plăcutul și FeedMe cu siguranță îndeplinește condițiile.

FeedMe este un dispozitiv automat de hrănit animale ale cărui feature-uri le voi descrie la momentul potrivit.

Descriere generală

Schema bloc

     Dispozitivul FeedMe este un automat de eliberare a hranei pentru animale (pisici ^_^) care se poate conecta prin Bluetooth la telefon, astfel încât poate fi controlat de la distanță prin intermediul unei aplicații compatibile cu plăcuța Arduino, dar și manual prin intermediul unor butoane puse la dispoziție pe BreadBoard. Starea dispozitivului dată de senzorul ultrasonic de distanță poate fi observată prin intermediul unor led-uri, iar pentru a face proiectul mai interactiv, dispozitivul eliberează un sunet, prin prisma căruia animăluțul poate fi dresat să vină să mănânce.

Hardware Design



Arduino UNO

Servomotorul este conectat la pinul 9 și este alimentat la 5V.

Modulul BLUETOOTH are RX și TX conectați la pinii 2 și 3 și este alimentat la 5V.

Senzorul ultrasonic are Trig si Echo în pinii 10 și 11.

Buzzer-ul este conectat la pinul 9 al plăcuței și în GND

Am ales această plăcuță întrucât eram obișnuită să o folosesc în cadrul laboratorului și a fost ușor să lucrez cu ea în cadrul proiectului.


BreadBoard


BreadBoard-ul a fost folosit pentru a conecta:

  • LED-urile
  • Butoanele
  • Rezistențele pentru led-uri și butoane
  • Fire intermediare pentru GND și 5V.



Servomotor


Am utilizat Motor Servo SG90 9G.

Motorul este folosit pentru a mișca capacul de plastic al recipientului astfel încât o cantitate mică de mâncare este eliberată. Acest proces a fost posibil cu o rotație de 45 de grade a motorașului.



Model Bluetooth


Am utilizat modulul BLUETOOTH 4.0 BLE CC2540 CC2541

Prin intermediul acestuia m-am conectat cu telefonul la aplicația Dabble, cu ajutorul căreia dispozitivul FeedMe poate fi controlat de la distanță.


Buzzer


Am adăugat un buzzer pentru a face proiectul mai interactiv.


Acesta scoate sunete în 2 cazuri:

  • Se activează motorul și cade mâncarea
  • Prin apăsarea unui buton de pe breadboard


Senzor ultrasonic


Am utilizat un Senzor Ultrasonic HC-SR04 pe care l-am conectat la plăcuță în pinii 10 și 11.

Acesta este folosit pentru a măsura distanța din recipient și a anunța atunci când acesta este mai mult de jumătate gol.


Butoane


Am utilizat butoane pentru diferite acțiuni manuale, precum:

  • Oprirea/pornirea senzorului de distanță
  • Activarea manuală a motorașului pentru a deschide capacul
  • Pornirea/oprirea unei melodii


Led-uri


Prin intermediul led-urilor se poate vedea starea dispozitivului, cum ar fi atunci când dispozitivul este declanșat led-ul verde va fi aprins.


Fire

Am folosit fire mama-mama pentru a conecta modulul Bluetooth, servomotorul, senzorul ultrasonic, buzzer-ul Și led-urile.

Firele tata-tata au făcut conexiunile dintre plăcuță și breadboard, butoane și rezistențe, precum și între firele mama-mama de la componente și plăcuță/breadboard.


Rezistențe


Am folosit rezistențe de 3000Ω pentru butoane și de 330Ω pentru LED-uri.


Suport


Consider că suportul, recipientul, capacul de sus și cel de jos, împreună cu asamblarea acestora, au reprezentat cea mai greu de făcut și lungă parte a proiectului.

Software Design

Biblioteci folosite:

#include <SoftwareSerial.h>

#include <Servo.h>

Pentru implementarea software am folosit Arduino IDE.

Servomotorul se poate mișca prin 2 moduri:

  • De la distanță: prin intermediul modulului Bluetooth, se poate conecta de pe un telefon cu Android/IOS pe aplicația Dabble, cu ajutorul căreia trimit un semnal la LED pe pin-ul 13. Prelucrez semnalul în cod, făcând servomotorul se se miște, buzzer-ul să sune și LED-ul să se aprindă.

  • Manual: prin apăsarea unui buton de pe breadboard

Pe capacul de sus al recipientului, am legat senzorul ultrasonic pentru a măsura distanța până la mâncare. Dacă aceasta este mai mare decât o anumită distanță setată dinainte (aproximativ 3/4 din recipient (15 cm)), atunci buzzer-ul va scoate un sunet periodic pentru a anunța stăpânul să mai adauge mâncare, iar ledul albastru va rămâne aprins până la refill. De asemenea, am adăugat un buton pentru a porni/opri senzorul.

Pentru a face dispozitivul mai interactiv am adăugat un buton care poate porni/opri o melodie (cu siguranță apreciată de toată lumea ^_^), cu ajutorul căreia, se poate dresa animalul să vină la mâncare.

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

  • 06.05.2022: Alegerea temei de proiect
  • 08.05.2022: Comandarea componentelor hardware
  • 13-15.05.2022: Găsirea materialelor pentru suport, recipient și capace
  • 20-22.05.2022: Scrierea codului în Arduino IDE și asamblarea componentelor hardware
  • 27-29.05.2022: Finalizarea codului și a documentației și asamblarea în versiunea finală

Bibliografie/Resurse

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

Export to PDF

pm/prj2022/rtilimpea/feedme.1654152873.txt.gz · Last modified: 2022/06/02 09:54 by andreea.pena0111
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