This shows you the differences between two versions of the page.
pm:prj2023:iotelea:pacanea [2023/05/29 19:59] david_gabriel.nitu [Software Design] |
pm:prj2023:iotelea:pacanea [2023/05/30 15:26] (current) david_gabriel.nitu [Hardware Design] |
||
---|---|---|---|
Line 27: | Line 27: | ||
Lista de piese: | Lista de piese: | ||
* Arduino nano | * Arduino nano | ||
- | * Ecran LCD 1602A | + | * Ecran LCD 1602A |
* Potentiometru | * Potentiometru | ||
* Senzor ultrasonic distanta HC-SR04 | * Senzor ultrasonic distanta HC-SR04 | ||
Line 52: | Line 52: | ||
printBank() care afiseaza suma de bani curenta.\\ | printBank() care afiseaza suma de bani curenta.\\ | ||
printSafeCode() care arata PIN-ul de la lacat.\\ | printSafeCode() care arata PIN-ul de la lacat.\\ | ||
- | Asadar flow-ul din loop incepe cu afisarea banilor din banca. Banii pot fi introdusi oricand pacaneaua nu se afla in timpul unui pariu. Astfel se asteapta detectarea banilor. Toata actiunea de pariat se afla dupa label-ul bet_again, care face ca jocul sa poata fi jucat de mai multe ori. Fol | + | Inainte de orice avem label-ul start care e folosit pentru a reseta pacaneaua cand balanta ajunge la 0. Asadar flow-ul din loop incepe cu afisarea banilor din banca. Banca este updatata daca senzorul detecteaza o bancnota, si balanta noua este afisata. Pe LCD ramane balanta curenta pana la apasarea butonului. Avem apoi label-ul bet_again care ne permite sa jucam din nou in cazul in care nu pierdem banii. Dupa ce butonul e apasat, jocul de pacanea incepe, implementat prin functiile auxiliare si prin cateva variabile precum buttonCounter(care ma ajuta sa imi dau seama daca dupa finalul unui bet e apasat iar butonul) si afterBetTime(care ma ajuta sa vad daca au trecut 5 sec dupa finalizarea bet-ului curent pentru a afisa PIN-ul). Astfel sunt 2 cazuri mari: betul se termina cu 0 bani in banca si se revine la label-ul start, sau betul se termina neutru sau mai bine, caz in care ori se afiseaza PIN-ul de la lacat ori se revine la label-ul bet_again(daca butonul este apasat in mai putin de 5 secunde de la finalizarea betului).\\ |
+ | Am folosit si Serial.println pentru a utiliza UART. | ||
===== Rezultate Obtinute ===== | ===== Rezultate Obtinute ===== | ||
+ | Mai jos am atasat un link catre un demo scurt. | ||
+ | https://youtube.com/shorts/tP9zxzsjyGQ?feature=share | ||
+ | Parerea mea e ca a iesit un proiect destul de fun si usor de jucat. | ||
+ | {{:pm:prj2023:iotelea:alfaromeo.jpeg?300|}} | ||
+ | {{:pm:prj2023:iotelea:alfaromeo2.jpeg?300|}} | ||
+ | {{:pm:prj2023:iotelea:alfaromeo3.jpeg?300|}} | ||
+ | {{:pm:prj2023:iotelea:alfaromeo4.jpeg?300|}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | A fost o experienta tare sa fac acest proiect. Primele probleme au aparut inca din alegerea pieselor pentru ca am luat din greseala alt ecran lcd decat pe cel pe care il voiam:). M-am descurcat totusi cu cel pe care l-am comandat. As zice ca cea mai mare dificultate a fost la lipire, insa am avut noroc sa am un ciocan de lipit la indemana si sa primesc niste sfaturi despre folosirea lui. Alta problema a fost la buton, pentru ca am vrut sa fac cu intreruperi insa nu m-am uitat de dinainte la specificatiile placutei si am aflat ca nu toate intrarile pot face intreruperi de-abia dupa ce lipisem tot. // | ||
+ | In ciuda tuturor aceste obstacole, acest proiect m-a invatat multe despre lucrul practic si despre cata rabdare e necesara pentru a face ceva. Chiar daca pacaneaua mea nu e foarte complicata, m-am distrat realizand-o si am dobandit multe cunostinte noi:)// | ||
===== Download ===== | ===== Download ===== | ||
+ | {{:pm:prj2023:iotelea:pacaneaua.zip|}} | ||
===== Jurnal ===== | ===== Jurnal ===== | ||
+ | * 2.05.2023: Am ales tema si am confirmat cu Ionut ca e ok | ||
+ | * 5.05.2023: Am inceput sa lucrez la schema hardware, si am ales piesele | ||
+ | * 9.05.2023: Am creat pagina de ocw si am adaugat introducerea si descrierea generala | ||
+ | * 12.05.2023: Mi-au venit piesele comandate | ||
+ | * 16.05.2023: Am terminat schema hardware si am inceput sa conectez piesele | ||
+ | * 20.05.2023: Am facut rost de ciocan de lipit de la un prieten si am lipit tot | ||
+ | * 25.05.2023: Am inceput sa scriu soft-ul pentru pacanea, am confectionat cutia de carton si am facut senzorul sa poata cat de cat sa recunoasca bancnotele | ||
+ | * 27.05.2023: Am terminat partea de software | ||
+ | * 29.05.2023: Am terminat pagina de ocw | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
+ | Lab 1\\ | ||
+ | Lab 5\\ | ||
+ | Lab 6\\ | ||
+ | https://github.com/arduino-libraries/LiquidCrystal\\ | ||
+ | \\ | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||