Table of Contents

Ball throwing device for animals

Ghelesel David Mihai - 331CB

Introducere

Scopul principal al acestui proiect este de a întări legătura dintre animalele de companie și stăpânii lor prin furnizarea unei experiențe de joacă tehnologic avansată și interactivă. Proprietarii de animale de companie se găsesc adesea în situația de a echilibra programele lor aglomerate cu starea de bine a animalelor lor. Atunci când un animal de companie și companionul său uman sunt împreună, există o oportunitate pentru timp de joacă. De aceea, propun implementarea unui dispozitiv care îmbunătățește această experiență.

Descriere generală

Ideea generala propusa de acest proiect este dezvoltarea unui dispozitiv funcțional de aruncare a unei mingi de dimensiune mică, care oferă o joacă captivantă pentru animale atunci când este inițiat de un operator uman.

Hardware Design

Dispozitivul integrează diverse componente hardware:

  • o placă Arduino UNO R3
  • un breadboard
  • un servo motor MG995
  • două LED-uri pentru feedback vizual
  • un buzzer pentru feedback audio
  • rezistoare
  • un buton
  • un senzor ultrasonic HC-SR04 pentru măsurarea distanței.

Software Design

Mediu de dezvoltare: insereaza_mediu

Librarii / surse 3rd party:

Biblioteca folosita pentru a controla servo motors:

#include Servo.h

Functionalitatea:

Codul citește starea unui buton conectat la pinul buttonPin și afișează starea acestuia în Serial Monitor. Senzorul cu ultrasunete este utilizat pentru a măsura distanța prin declanșarea unui impuls și calcularea duratei necesare pentru ca ecoul să se întoarcă. Distanța este apoi calculată pe baza vitezei sunetului folosind formula: distanță = durată × 0.034/2.

Măsurarea distanței este verificată, iar dacă distanța este mai mare sau egală cu 10 cm, LED-ul verde se aprinde, iar LED-ul roșu se stinge. În caz contrar, dacă distanța este prea mică, un mesaj este afișat în Serial Monitor, iar LED-ul roșu se aprinde.

Verific apoi dacă butonul este apăsat (buttonState == HIGH) și dacă distanța este mai mare sau egală cu 10 cm. Dacă ambele condiții sunt îndeplinite, se efectuează următoarele acțiuni:

• Rotește motorul servo la 90 de grade pentru a activa catapulta.

• Activează un buzzer pentru a emite un sunet la o frecvență de 1000 Hz timp de 0.5 secunde.

• Readuce motorul servo la poziția inițială (definită ca initialPosition).

Rezultate Obținute

https://youtu.be/DO3wXFz8eTw

https://youtu.be/Ff2ew-QNk9E

Concluzii

Proiectul functioneaza dupa planificare, luminarea LED-urilor ar putea sa fie mai perceptibila.

Download

ball_throwing_device.zip

Jurnal

06.05.2024 - creare pagina OCW

14.05.2024 - compunere schema electrica

17.05.2024 - asamblare Hardware

25.05.2024 - implementare Software

26.05.2024 - prezentarea rezultatelor obtinute prin video

Bibliografie / Resurse

https://docs.arduino.cc/

https://projecthub.arduino.cc/

https://howtomechatronics.com/