Dancing Fly Engine

Introducere

Pentru realizarea acestui proiect am folosit un servo motor, un senzor de sunet, leduri, lcd I2C, speaker de 4Ω 15W, leduri, led rgb si butoane. Dancing Fly Engine este o jucarie pentru a captiva atentia copiilor! Aceasta jucarie contine un motoras care se invarte pe ritmuri muzicale cu ajutorul senzorului de sunet pe care trebuie sa-l puneti aproape de un difuzor, orice difuzor. De exemplu, daca aveti un telefon tot ce trebuie sa faceti este sa puneti senzorul de sunet in apropierea difuzorului iar motorasul se va invarti in functie de melodia curenta! In timp ce motorasul se misca pe ritumurile melodiei de asemenea si ledurile vor reactiona dupa ritmul muzicii iar ledul rgb isi va schimba culoarea! Acest proiect nu contine doar un motoras si leduri care se dezlantuie dupa muzica! Vine la pachet cu un ecran LCD care afiseaza numele proiectului si un pian electric! La apasarea unei taste se va aprinde un led iar motorasul se va invarti si va scoate un sunet care te anunta ca a primit comanda cu succes. Am ales să fac acest proiect deoarece sunt pasionat de efecte de lumini și sunete! Întotdeauna mi-am dorit sa îmi fac o mini discoteca! Acum am ocazia sa îmi îndeplinesc acest vis!

Descriere generala

Pentru a porni Dancing Fly Engine tot ce avem de facut e sa punem senzorul de sunet langa un difuzor, fie de la Laptop, ori de la boxe, tableta, etc. motorasul va începe să se miste pe ritmuri muzicale iar ledurile se vor aprinde si se vor stinge in functie de ritm! Ledul RGB își va schimba culoarea în funcție de ritmul muzicii! In timp ce motorasul, ledurile si ledul RGB își fac treaba vom avea pe display numele jucariei(sau a proiectului). Daca ne săturăm să ascultăm muzică de la alții avem ocazia să ne compunem noi muzica cu ajutorul pianului electric! Odata ce vom apasa pe clapa informatia de pe placuta Arduino care este legata de breadbordul cu pianul si difuzorul respectiv, va transmite catre cealalta placuta Arduino nota respectiva! Odata ce nota respectiva a fost primita pe cealalta placuta Arduino motorasul se va misca iar ledul se va aprinde pentru o perioada scurta de timp!

Diagrama bloc:

Hardware Design

Schema electrica:

Lista componente
  • 2 X Arduino UNO R3
  • 2 X BreadBoard
  • Speaker 4Ω 15W
  • Led-uri
  • Led RGB
  • LCD I2C
  • O cutie de componente
  • Rezistente
  • Fire de legatura mama-tata
  • Fire de legatura tata-tata
  • Fire de legatura mama-mama
  • Jumperi
  • Senzor de Sunete
  • Butoane
  • Servo 9G

Software Design

Pentru crearea proiectului am folosit urmatoarele librarii: Servo.h pentru a utiliza servo motorul SG90 si LiquidCrystal_I2C.h pentru a afisa pe ecran titlul proiectului! Pentru a utiliza jucaria respectiva am doua sketuri: SenderFlyEngine.ino și ReceiverFlyEngine.ino.

SenderFlyEngine.ino:

În SenderFlyEngine avem o librarie Notes.h care contine notele muzicale pentru pian! În sketch am intializat butoanele cu INPUT_PULLUP pentru a putea transimite serial ,am setat BaudRate la 9600 si am setat pinul pentru speaker!. În funția loop am folosit whileuri pentru a obtine o claritate mai buna a sunetului! Daca as fi bagat doar un simplu if as fi avut un sunet deranjant care nu era placut pentu urechile noastre! In interiul instructiunii while folosim instructiunea write pentru a scrie pe seriala si apoi folosim tone si un delay pentru a se sincroniza cu cealalta placuta! Dupa ce iesim din while restabilim conexiunea cu seriala dand valoarea 0.

ReceiverFlyEngine.ino

In ReceiverFlyEngine avem librariile mentionate mai sus si am setat pinii pentru componente pe placa Arduino! Apoi am bagat if-uri pentru a obtine un rezultat cat mai bun dat de senzor astfel incat sa aprind ledurile trepatat iar dupa ce trecem de if-uri îi dăm valoarea motorului respectiv pentru a executa miscarea! Dupa ce rezolvam treaba cu motorasul verificam daca primim informatii de la cealalta placuta si daca primim tratam situatiile pentru fiecare caz in parte!

Pentru mai multe detalii legate de implementarea codului gasiti un README in arhiva proiectului!

Jurnal

  1. 22.03.2021 Comanda placuta Arduino
  2. 31.03.2021 Comanda piese Arduino
  3. 22.04.2021 Comanda Arduino Starter Kit
  4. 25.04.2021 Alegere tema proiect
  5. 30.04.2021 Asamblare proiect Dancing Fly Engine:
  6. 07.05.2021 Comanda piese Arduino(senzor de sunet, fire, butoane, etc.)
  7. 14.05.2021 Modificare proiect Dancing Fly Engine
  8. 16.05.2021 Asamblare Pian Electric
  9. 17.05.2021 Modificare Schema Bloc si creare schema electrica
  10. 18.05.2021 Testare conexiuni intre pian electric intre motor si leduri
  11. 19.05.2021 Creare Demonstratii Dancing Fly Engine pe melodii
  12. 20.05.2021 Prezentare Videoclip si uploadare cateva mostre de testare pe youtube
  13. 21.05.2021 Incarcare alte mostre pe YouTube
  14. 22.05.2021 Modificare documentatie si Finalizarea acesteia

Rezultate Obtinute

In poza de mai jos putem observa proiectul Dancing Fly Engine. Dancing Fly Engine este alcatuit din mai multe componente cum se poate observa in imagine.

2.jpg

Vom începe cu prezentarea componentelor pentru pian! Speakerul din imaginea de mai sus este conectat la pinul 11 de pe placauta Arduino din stanga dupa cum se observa!

prezentarebutoanepian.jpg

In aceasta imagine se observa ca am folosit toti pinii de pe placuta arduino pentru a conecta cele 11 butoane si pinul 11 care este conectat pe breadbord care conecteaaza speakerul la Arduino! Acesta este reprezentat de un fir protocaliu!

prezentareplacutapian.jpg

Dupa cum se vede toti pinii digitali de pe placuta Arduino sunt folositi la maxim! Pentru a putea comunica cu cealalta placuta folosim comunicare USART pentru a transimite notele muzicale catre fly engine, leduri si led rgb.

prezentareplacutaengine.jpg

Aceasta imagine reprezinta placuta care conectam ledurile, servomotorul SG-90,senzorul de sunet care este conectat la pinul analog A0 si ecranul lcd I2C care este conectat la pinii A4 SI A5!

prezentareleduri.jpg

Aici se observa conectarea ledurilor si a ledurilor care au rezistente de 1kΩ fiecare! Ledul rgb este conectat la pinii 6, 5, 3 iar ledurile sunt conectate la pinii 13, 12, 2, 4 si 8!

prezentareservomotor.jpg

In imagine avem servomotorul SG-90 care e componenta de rezistenta din cadrul proiectului Dancing Fly Engine! Acest motoras se va misca pe ritmuri muzicale cu ajutorul senzorului de sunet! Motorasul sta fixat pe cutia de componente asa cum reiese din imagine!

prezentarelcd.jpg

Aici avem LCD I2C care afiseaza numele proiectului! In imaginile urmatoare putem observa miscarile motorasului si ledurile respective care se aprind si se sting iar ledul RGB isi schimba culoarea in functie de semnalul receptionat de senzorul de sunet!

rez1.jpg

Aici senzorul de sunet receptioneaza semnalul generat de difuzorul de la calculator si transimite motorasului, ledurilor si ledului rgb comenzile necesare iar aceste componente vor reactiona diferit asa cum am explicat mai sus!

rez2.jpg

In aceasta imagine avem senzorul de sunet care este montat pe pinul A0 si se ocupa cu captarea sunetului care este transmis catre leduri si mototras!

reznoapte2.jpg

Aici putem vedea rezultatele pe timp de noapte! Dupa cum se poate observa arata fenomenal!

Aici aveti un link catre pianul electric care transimite comenzi catre motoras si leduri care receptioneaza urmatoarele comenzi si fac anumite actiuni asa cum se observa in videoclipul de prezentare! Am facut acest videoclip deoarece am vrut sa va fac o demonstratie mai detaliata!

PianElectric:https://www.youtube.com/watch?v=AqvRsJr_SVA&ab_channel=CostyFortzaaTGV

Dupa cum am spus in videoclipul de prezentare am sa vin cu cateva monstre care demonstreaza functionalitatea jucariei Dancing Fly Engine:

GamesOfThrones:https://www.youtube.com/watch?v=6nY71Swt80Q&ab_channel=CostyFortzaaTGV

Astronomia:https://www.youtube.com/watch?v=jmBmq8qLu4U&ab_channel=CostyFortzaaTGV

Pirates Of The Carribean:https://www.youtube.com/watch?v=DpDSFfNzik8&ab_channel=Costy

Sia - Move your Body(Alan Walker Remix):https://www.youtube.com/watch?v=oY3Z3YuI328&ab_channel=Costy

Juanes - La Camisa Negra:https://www.youtube.com/watch?v=3rNKgyBygBw&ab_channel=Costy

Eminem - Venom:https://www.youtube.com/watch?v=l5-i9JFpOIc&ab_channel=CostyFortzaaTGV

Eminem - Godzilla:https://www.youtube.com/watch?v=imd61FHj-1U&ab_channel=CostyFortzaaTGV

The GodFather Theme Song:https://www.youtube.com/watch?v=bSoqAPUXaBY&ab_channel=CostyFortzaaTGV

B.U.G. Mafia feat Mario - Strazile:https://www.youtube.com/watch?v=Ag5h3hYjzak&ab_channel=CostyFortzaaTGV

Dr. Dre feat Snoop Dog - Still D.R.E. - https://www.youtube.com/watch?v=Nfa_WPGV7YQ&ab_channel=CostyFortzaaTGV

Allan Walker - Spectre:https://www.youtube.com/watch?v=pmbSdphdZoE&ab_channel=CostyFortzaaTGV

Shawn Mendes, Camila Cabello - Señorita:https://www.youtube.com/watch?v=S3Il_1hPv-I&ab_channel=CostyFortzaaTGV

Harry Potter Theme Song:https://www.youtube.com/watch?v=_tsHhyCFSy4&ab_channel=CostyFortzaaTGV

Luis Fonsi ft. Daddy Yankee - Despacito:https://www.youtube.com/watch?v=uiRIh8zWgds&ab_channel=CostyFortzaaTGV

Bella Ciao La Casa De Papel Theme Song:https://www.youtube.com/watch?v=Pvyny-BO7e0&ab_channel=CostyFortzaaTGV

Imagine Dragons Believer:https://www.youtube.com/watch?v=1Ql-IFQKsJs&ab_channel=CostyFortzaaTGV

Concluzii

A fost o experienta frumoasă și riscantă în acelasi timp deoarece eram să ard placile de foarte multe ori dar am avut noroc și nu s-a întâmplat asta! Mă bucur că am avut șansa de a da naștere unei jucării pe care o voi transimte din generatie în generatie!

Download

Arhiva proiect inclusiv README:DancingFlyEngine.zip

Documentatie in format pdf:DancingFlyEngine.pdf

Bibliografie

Resurse

pm/prj2021/avaduva/dancingflyengine.txt · Last modified: 2021/06/18 19:28 by costin_adrian.stan
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